第一种:简单判断形式
借鉴的题解区大佬的,掐头去尾后,由子串经过n组成的s,至少有一个s串本身,在s+s串中可以匹配。
class Solution {
public boolean repeatedSubstringPattern(String s) {
return (s+s).substring(1,s.length()*2-1).indexOf(s)!=-1;
}
}
第二种:模拟枚举子串可能的长度
class Solution {
public boolean repeatedSubstringPattern(String s) {
int length=s.length();
if(length<2)return false;
for(int i=1;i<=length/2;i++)//列举子串的可能长度
{
if(length%i!=0)continue;
String temp=s.substring(0, i);
String ans="";
//最大连接次数,s长度除以子串的长度。
for(int j=1;j<=length/i;j++)
{
ans+=temp;
}
if(ans.equals(s))return true;
}
return false;
}
}