您的位置:首页 > 其它

找出两个字符串中最大公共子字符串,如"abccade","dgcadde"的最大子串为"cad"

2012-09-24 15:15 766 查看
import java.util.ArrayList;

import java.util.List;

//找出两个字符串中最大公共子字符串,如"abccade","dgcadde"的最大子串为"cad"

public class ZuiDaZiChuan {

public static void main(String args[]) {

String str1 = "abccade";

String str2 = "dgcadde";

List<String> str1Sub = new ArrayList<String>();

List<String> str2Sub = new ArrayList<String>();

List<String> listSame = new ArrayList<String>();

for (int i = 0; i <= str1.length(); i++) {

for (int j = i; j <= str1.length(); j++) {

str1Sub.add(str1.substring(i, j));

}

}

for (int i = 0; i <= str2.length(); i++) {

for (int j = i; j <= str2.length(); j++) {

str2Sub.add(str2.substring(i, j));

}

}

for (int i = 0; i < str1Sub.size(); i++) {

for (int j = 0; j < str2Sub.size(); j++) {

if (str1Sub.get(i).equals(str2Sub.get(j))) {

listSame.add(str1Sub.get(i));

}

}

}

int maxId = 0;

int maxValue = 0;

for (int i = 0; i < listSame.size(); i++) {

if (listSame.get(i).length() > maxValue) {

maxId = i;

maxValue = listSame.get(i).length();

}

}

System.out.print(listSame.get(maxId));

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐