黑马程序员技术交流社区
标题:
找出两字符串的最大子字符串(实现)
[打印本页]
作者:
ganjx
时间:
2015-10-3 10:35
标题:
找出两字符串的最大子字符串(实现)
本帖最后由 ganjx 于 2015-10-3 10:38 编辑
<div class="blockcode"><blockquote>class TestFindMaxStringDemo
{
public static void main(String [] args)
{
TestFindMaxString("dsjiafjdifjaosf","jsfjdifjf");//
}
public static void TestFindMaxString(String str1,String str2)
{
//int max = getMaxlength(str1,str2);
//取出最短的字符串长度
int min = getMinlength(str1,str2);
//取出最长的字符串
String maxString = ((str1.length()>str2.length())?str1:str2);
//取出最短的字符串
String minString = ((str1.length()>str2.length())?str2:str1);
String temp="";
/*
for(int len=min;len>0;len-- )//假设字符串的长度
{
for(int pos=0;pos+len<min;pos++)//不能越界
{
temp=minString.substring(pos,len+pos);
if(maxString.indexOf(temp)!=-1)
{
System.out.println(temp);
//return temp;//取出最大字符串,但当有多个长度一样时只能取出一个
}
}
}
*/<
boolean flag=false;
for(int len=min;len>0;len-- )//假设字符串的长度
{
if(flag)
break;
for(int pos=0;pos+len<min;pos++)//不能越界
{
temp=minString.substring(pos,len+pos);
if(maxString.indexOf(temp)!=-1)
{
flag=true;
System.out.println(temp);
}
}
}
}
/*
取出两字符串的最长
**/
public static int getMaxlength(String str1,String str2)
{
return (str1.length()>str2.length())?str1.length():str2.length();
}
/*
取出两字符串的最短
**/
public static int getMinlength(String str1,String str2)
{
return (str1.length()>str2.length())?str2.length():str1.length();
}
}
复制代码
1111.png
(9.68 KB, 下载次数: 8)
下载附件
2015-10-3 10:16 上传
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2