题解 | #查找两个字符串a,b中的最长公共子串#

查找两个字符串a,b中的最长公共子串

https://www.nowcoder.com/practice/181a1a71c7574266ad07f9739f791506

暴力解法:找出较短的字符串中的字串,从较长的字串的开始找起,如果在较长字符串中包含这个字串,直接输出即可。

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        while (in.hasNext()) { 
            String str1 = in.next();
            String str2 = in.next();
            String strlen = "";
            String strshort = "";
            if(str1.length()>str2.length()){
                strlen = str1;
                strshort = str2;
            }else{
                strlen = str2;
                strshort = str1;
            }
            for(int i=strshort.length();i>=1;i--){
                for(int j=0;j<=strshort.length()-i;j++){
                    if(strlen.contains(strshort.substring(j,j+i))){
                        System.out.println(strshort.substring(j,j+i));
                        return;
                    }
                }
            }
        }
    }
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务