串的重复
来源:互联网 发布:sqlserver 复制表 编辑:程序博客网 时间:2024/06/08 03:06
代码的目标:判断一个串是否为某个基本串的简单复制构成的。
例如:
abcabcabc,它由“abc”复制3次构成,则程序输出:abc
aa 由“a”复制两次构成,则程序输出:a
axa 不是简单复制构成,则不输出任何信息
aaxx 也不是仅仅由简单复制构成,不输出信息。
请阅读下面的代码,填写缺失的部分(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
直接写在题面中不能得分。
public class DaSai
{
public static void findRepeat(String x)
{
for(int i=1; i<=x.length()/2; i++)
{
String base = x.substring(0,i);
int p = i;
for(;;)
{
if(p+i>x.length()) break;
if(x.substring(p,p+i).equals(base)==false) break;
________________; // 填空1
}
if(______________) // 填空2
{
System.out.println(base);
break;
}
}
}
public static void main(String[] args)
{
findRepeat("IhaveagoodideaIhaveagoodideaIhaveagoodidea");
}
}
// 判断一个串是否为某个基本串的简单复制构成的// 满分9分// 第一空:4分// p += i 或者:// p = p + i// p = i + p//// 第二空:5分// p == x.length() 或者// x.length() == p// p >= x.length()// !(p<x.length())//// 对每个不同的答案要细心,首先带入程序,看结果是否正确// 再换数据测试public class Test1{public static void findRepeat(String x){for(int i=1; i<=x.length()/2; i++){String base = x.substring(0,i);int p = i;for(;;){if(p+i>x.length()) break;if(x.substring(p,p+i).equals(base)==false) break;p += i;}if(p==x.length()){System.out.println(base);break;}}}public static void main(String[] args){findRepeat("IhaveagoodideaIhaveagoodideaIhaveagoodidea");findRepeat("aaa");findRepeat("abab");findRepeat("aah");}}
0 0
- 串的重复
- 最长可重复的重复子串(1)
- 后缀数组(重复次数最多的连续重复子串)
- 最长无重复字符的子串
- 没有重复字符的最长子串
- 求最长重复子串的长度
- 求字符串的最长重复子串
- 求字符串的最长重复子串
- 求字符串的最长重复子串
- 最长可重叠的重复子串
- 处理重复子串的问题
- 237 找出最长的重复子串
- 最长无重复字符的子串
- 最长无重复字符的子串
- 最长无重复字符的子串
- 找出字串的最长重复子串
- poj 3693连续重复最多的串
- 最长无重复字符的子串
- Java文件写入文本内容方法
- SD卡上写入数据库
- android中的自动补全,autoCompleteTextView 的使用
- hdu 1272 小希的迷宫 (并查集)
- Android自动化测试工具调研
- 串的重复
- 使用fragment注意事项
- Android Studio 快捷键盘
- 适配器
- How to build & install GLFW 3 and use it in a Linux project
- JDBC
- 设计模式
- Spring集成Jackson输出非Null数据之XML配置
- sizeof()和 strlen()函数