目录
一:题目:
二:代码:
三:结果:
一:题目:
给定一个非空的字符串 s
,检查是否可以通过由它的一个子串重复多次构成。
二:代码:
class Solution {
public:void next(string s,int* next1){next1[0]=0;int j=0;for(int i=1;i<s.size();i++){while(j>0&&s[i]!=s[j]){j=next1[j-1];}if(s[i]==s[j]){j++;}next1[i]=j;}}bool repeatedSubstringPattern(string s) {if(s.size()==0) return false;int len=s.size();int next1[len];next(s,next1);if(next1[len-1]!=0&&len%(len-next1[len-1])==0){return true;}return false;}
};