a- package demo.collection;
- public class MaxSameSubstringDemo {
- /**
- * 3、两个字符串中最大相同的子串 "qwerabcdtyuiop" "xcabcdvbn"
- */
- public static void main(String[] args) {
- String str1 = "qwerabcdtyuiop";
- String str2 = "abcd";
- String longString = str1.length()>str2.length()?str1:str2;
- String shortString = longString.endsWith(str1)?str2:str1;
- // System.out.println("longString:"+longString);
- String str = getSubstring(shortString,longString);
- System.out.println(str);
- }
- private static String getSubstring(String str2, String str1) {
- int len = str2.length();
- for (int i = str2.length(); i > 0; i--) {
- for (int beginIndex = 0; beginIndex < str2.length() - i; beginIndex++) {
- String sub = str2.substring(beginIndex, beginIndex + i);
- if (str1.contains(sub)) {
- // System.out.println(sub);
- return sub;
- }
- }
- }
- System.out.println("没有匹配的");
- return null;
- }
- }
复制代码
|
|