java语言编程:求两个字符串的最大子串
2014-12-05 22:05
429 查看
[java] view
plaincopy
package stringTest;
public class StringDemo4 {
public static void main(String[] args) {
String str1 = "Ilikejavaverymuch";
String str2 = "java is useful";
StringDemo4 sd4 = new StringDemo4();
sd4.sop(sd4.getMaxSubString1(str1, str2));
}
/**
* 求两个字符串的最大相同子串,思路:
* 1、将短的字符串,按照长度递减的方式获取子串(核心)
* 2、将每个获取的子串,判断是否在长的字符串中存在
* */
String getMaxSubString1(String str1, String str2) {
String maxStr ="", minStr = "";
maxStr = str1.length() > str2.length() ? str1:str2;
minStr = (maxStr == str1) ? str2:str1;
for(int i = 0; i < minStr.length(); i++){
for(int start = 0, end = minStr.length()-i; end <= minStr.length(); start++, end++){
if (maxStr.contains(minStr.substring(start, end))){
return minStr.substring(start, end);
}
}
}
return "";
}
//打印字符串
void sop(String str){
System.out.println("str = " + str + "");
}
}
打印结果:
str = java
plaincopy
package stringTest;
public class StringDemo4 {
public static void main(String[] args) {
String str1 = "Ilikejavaverymuch";
String str2 = "java is useful";
StringDemo4 sd4 = new StringDemo4();
sd4.sop(sd4.getMaxSubString1(str1, str2));
}
/**
* 求两个字符串的最大相同子串,思路:
* 1、将短的字符串,按照长度递减的方式获取子串(核心)
* 2、将每个获取的子串,判断是否在长的字符串中存在
* */
String getMaxSubString1(String str1, String str2) {
String maxStr ="", minStr = "";
maxStr = str1.length() > str2.length() ? str1:str2;
minStr = (maxStr == str1) ? str2:str1;
for(int i = 0; i < minStr.length(); i++){
for(int start = 0, end = minStr.length()-i; end <= minStr.length(); start++, end++){
if (maxStr.contains(minStr.substring(start, end))){
return minStr.substring(start, end);
}
}
}
return "";
}
//打印字符串
void sop(String str){
System.out.println("str = " + str + "");
}
}
打印结果:
str = java
相关文章推荐
- java语言编程,求两个字符串的最大子串
- 【java编程】String之两个字符串获取最大子串
- java基础—找出两个字符串中最大的子串
- 找出两个字符串中最大的公共子串(java实现)
- 编程实现获取两个字符串中最大相同子串
- 关于 java中 求两个字符串中最大的公共子串之引发对return的用法探讨
- java实现字符串匹配问题之求两个字符串的最大公共子串
- Java找出两个字符串中最大的子串
- java获取两个字符串中最大子串
- java基础-找出两个字符串相同的最大子串
- 编程查找两个字符串最大公共子串
- 两个字符串中最大的相同的子串(java编写)
- 135、编程实现:找出两个字符串中最大公共子字符串,如"abccade","dgcadde"的最大子串为 "cad"
- [Java]取得两个字符串的最大相同子串
- Java获取两个字符串中最大相同子串的方法
- java练习获取两个字符串的最大相同子串
- [C/C++笔面试]编程查找两个字符串中的最大公共子串
- Java获取两个字符串中最大相同子串
- 黑马程序员_日记25_Java两个字符串的最大相同子串