作者:000冷000 | 来源:互联网 | 2023-10-11 13:06
*获取两个字符串中最大相同子串。枚举出长度较短的字符串的所有子串。将子串放在字符串数组中。通过循环判断长度较长的字符串中是否包含字符串数组中的元素,并返回包含且最长的子字符串。*classStr
/*
获取两个字符串中最大相同子串。枚举出长度较短的字符串的所有子串。将子串放在字符串数组中。
通过循环判断长度较长的字符串中是否包含字符串数组中的元素,并返回包含且最长的子字符串。
*/
class StringTest4
{
public static void main(String[] args)
{
string_sub("asddghjukihjughjkssfghyj","adhasjkssdghjuoop");
System.out.println("Hello World!");
}
public static void string_sub(String str1,String str2)
{
if(str1.length()>str2.length())
sop(deal(str2,str1));
else
sop(deal(str1,str2));
}
public static String deal(String str1,String str2)
{
String[] arr=new String[100000000];
boolean flag=false;
String max="";
int k=0;
for (int j=0;j{
for(int i=j+1;i<=str1.length();i++)
arr[k++]=str1.substring(j,i);
}
for(int i=0;i{
if(str2.contains(arr[i]))
{
flag=true;
if(max.length(){
max=arr[i];
}
}
}
return flag?max:"不存在公共子串";
}
public static void sop(Object obj)
{
System.out.println(obj);
}
}