如果一个字符串 可以有某一个长度的为k的字符串组成。比如:abcaabcaabcaabcaabcaabcaabcaabcaabcaabcaabcaabcaabca
是以为周期的 他也以 8和12为周期 求最小周期对应的字符串。
思路:for循环 循环判断。但是很明显:第一组和第二组 和第三组等等等等判断 。有没有最简单的办法呢。有
s.split(s.substring(0,i)) 我把所有的字符串 按照某一个链接分成数组,如果每一个数组都是空的。说明 这是最小的周期串直接上代码
String s="abaaabaaabaaabaaabaaabaaabaaabaaabaaabaaabaaabaaabaaabaa";
for (int i = 1; i <= s.length()/2; i++) {//循环遍历 到一半就好了 之后无意义
String result="";
String[] mystring= s.split(s.substring(0,i));//分割字符串 变成数组
for (int j = 0; j < mystring.length; j++) {
result+=mystring[j]; }//循环增加截取的字符串 如果每一个是空的话
if (result.equals("")){//如果每一个都是空的话 说明符合条件
System.out.print(s.substring(0,i));//打印最小的周期串
break;}
}