本帖最后由 浪无痕-陈文坤 于 2013-8-6 06:46 编辑
毕老师视频中,两字符串找最大相同字符串(连续最大),我想找出全部最大相同,不知道下面的可不可以,谢谢!(希望能给出其他方式)
public class Hello
{
public static String getMaxSubString(String s1,String s2)
{
//进行判断,将长的字符串复制给max,将短的赋值给min
String max = "",min = "",str;
max = (s1.length()>s2.length())?s1:s2;
min = (max==s2)?s1:s2;
StringBuffer sb = new StringBuffer();
int i = 0,j;
//进行遍历
//外循环遍历的是元素的行数
for(int x = 0;x<min.length();x++)
{
//内循环遍历的是控制元素减少
for(int y=0,z=min.length()-x;z!=min.length()+1;y++,z++)
{
String temp = min.substring(y,z);
//sop(temp);
if(max.contains(temp))
{
j = z;
sb.append(temp + "\n");
if(++j == (min.length()+1))
return sb.toString();
}
}
}
return "";
}
public static void main(String[] args)
{
String s1= "worldohellossaicwkkk";
String s2 ="worlddhelloxcwkkk";
sop(getMaxSubString(s1,s2));
}
public static void sop(String str)
{
System.out.println(str);
}
}结果:
world hello
cwkkk
|