黑马程序员技术交流社区
标题:
字符串的问题
[打印本页]
作者:
公子-醉香
时间:
2013-12-14 22:12
标题:
字符串的问题
public class StringTest {
public static void main(String[] args) {
// TODO Auto-generated method stub
String s1="sasasaworklkfdkfkd";
String s2="fddworkitmh";
show(getMaxSubString(s1,s2));
}
public static String getMaxSubStrng(String s1,String s2){
for(int x=0;x<s2.length();x++){
//下面的这个判断条件有点抽象,理解了半天还是没理解清楚,有谁给我解释一下?
for(int y=0,z=s2.length()-x;z!=s2.length()+1;y++,z++){
String temp =s2.substring(y,z);
if(s1.contains(temp)){
return temp;
}
}
}
return "";
}
public static void show(String str){
System.out.println(str);
}
}
复制代码
作者:
回音
时间:
2013-12-14 22:45
//这是求最长公共子串的问题。假设这个最长公共子串为String temp。temp的长度最大为s2.length()。
//外层循环是在遍历temp各种可能的长度。每次循环时设置temp长度为s2.length()-x。
for(int x=0;x<s2.length();x++)
{
//temp长度确定后,遍历其在s2中的起始位置。每次循环时temp起始位置设为y,结束位置z。
//z为y+s2.length()-x。
//为了保证temp长度不变,y和z每次循环都加1。直到z到达s2最后。
for(int y=0,z=s2.length()-x;z!=s2.length()+1;y++,z++){
String temp =s2.substring(y,z);
if(s1.contains(temp)){
return temp;
}
}
}
作者:
高亮亮
时间:
2013-12-14 22:54
回音 发表于 2013-12-14 22:45
//这是求最长公共子串的问题。假设这个最长公共子串为String temp。temp的长度最大为s2.length()。
...
看了好一会,还在理解中.感谢高手^^^^^^
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2