牛客Top200---最长公共字符串(java)

Posted 小样5411

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了牛客Top200---最长公共字符串(java)相关的知识,希望对你有一定的参考价值。

题目

题解

import java.util.*;

public class Solution {
    /**
     * longest common substring
     * @param str1 string字符串 the string
     * @param str2 string字符串 the string
     * @return string字符串
     */
    public String LCS (String str1, String str2) {
        //定义start,end下标,滑动匹配str2的子串是否包含于str1中
        int start = 0,end = 1;
        String res = "";//初始化最长公共字串
        while(end <= str2.length()){
            //substring是[)左闭右开,一开始是第一个字符,看是否包含,然后向后移动
            String subStr = str2.substring(start,end);
            if(str1.contains(subStr)){
                res = subStr;
                end++;
            }else{
                start++;
                end++;
            }
        }
        return res;
    }
}

以上是关于牛客Top200---最长公共字符串(java)的主要内容,如果未能解决你的问题,请参考以下文章

牛客Top200---最长回文字符串(java)

牛客Top200---最长无重复子数组(java详解)

牛客Top200---最长递增子序列(求子序列+长度 画图详解java)

最长公共前缀(NC55/考察次数Top64/难度简单)

最长公共前缀(NC55/考察次数Top64/难度简单)

最长公共子串(NC127/考察次数Top22/难度中等)