1、前言
![](https://img.haomeiwen.com/i11345146/af53e45593ba8fda.png)
2、思路
这边用的思路就是,如果一个字符串含有重复子串,那么经过一定的移位后,必定能变成跟原来的字符串一样。
比如 abcabc,移1位是cabcab,移2位是bcabca,移3位是abcabc。只需要尝试1 到 (s.length - 1)次就行。但是这样一次次的太慢了,可以直接将两个字符串拼接起来。
3、代码
class Solution {
public boolean repeatedSubstringPattern(String s) {
String str = s + s;
return str.substring(1, str.length() - 1).contains(s);
}
}
网友评论