领扣LintCode算法问题答案-79. 最长公共子串

    科技2024-01-04  91

    领扣LintCode算法问题答案-79. 最长公共子串

    目录

    79. 最长公共子串描述样例 1:样例 2: 题解鸣谢

    79. 最长公共子串

    描述

    给出两个字符串,找到最长公共子串,并返回其长度。

    子串的字符应该连续的出现在原字符串中,这与子序列有所不同。

    样例 1:

    输入: "ABCD" and "CBCE" 输出: 2 解释: 最长公共子串是 "BC"

    样例 2:

    输入: "ABCD" and "EACB" 输出: 1 解释: 最长公共子串是 'A' 或 'C' 或 'B'

    题解

    public class Solution { /** * @param A: A string * @param B: A string * @return: the length of the longest common substring. */ public int longestCommonSubstring(String A, String B) { // write your code here int ret = 0; StringBuilder sb = new StringBuilder(); for (int i = 0; i < A.length(); i++) { sb.setLength(0); sb.append(A.substring(i)); while (!B.contains(sb)) { sb.setLength(sb.length() - 1); } if (sb.length() > ret) { ret = sb.length(); } } return ret; } }

    原题链接点这里

    鸣谢

    非常感谢你愿意花时间阅读本文章,本人水平有限,如果有什么说的不对的地方,请指正。 欢迎各位留言讨论,希望小伙伴们都能每天进步一点点。

    Processed: 0.024, SQL: 8