//给定一个字符串,求出其最长的重复子串。
public class Longest { public static void main(String args[]) {
String str = "bbbaaaac";
int maxLengthValue=0;
int start=0,end=0;
for (int i = 0; i < str.length(); i++) {
for (int j = i + 1; j < str.length();) {
while (str.charAt(i) == str.charAt(j)) {
if(j-i+1>maxLengthValue){
maxLengthValue=j-i+1;
start=i;end=j;
}
j++;
}
break;
}
}
System.out.println(start+" "+end); }
}
import java.util.ArrayList;
import java.util.HashSet;
import java.util.List;
import java.util.Set;//给定一个字符串,求出其最长的重复子串。
public class Longest { public static void main(String args[]) {
String str = "bcdabcdaaa";
Set<String> temp = new HashSet<String>();
List<String> result = new ArrayList<String>(); for (int i = 0; i < str.length(); i++) {
for (int j = i; j <= str.length(); j++) { // 注意这个<= if (!temp.add(str.substring(i, j))) {
result.add(str.substring(i, j));
} }
} int maxValue = 0;
int maxNum = 0;
for (int i = 0; i < result.size(); i++) {
if (result.get(i).length() > maxValue) {
maxValue = result.get(i).length();
maxNum = i;
}
} System.out.println(result.get(maxNum));
}}
给定一个字符串,求出其最长的重复子串。
原创
©著作权归作者所有:来自51CTO博客作者TechOnly的原创作品,请联系作者获取转载授权,否则将追究法律责任
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章