问题描述
链接:https://www.nowcoder.com/ques...
来源:牛客网
给出两个字符串(可能包含空格),找出其中最长的公共连续子串,输出其长度。
输入描述
输入为两行字符串(可能包含空格),长度均小于等于50.
输出描述
输出为一个整数,表示最长公共连续子串的长度。
示例
输入
abcde
abgde
输出
2
解题思路
比较两个字符串str1,str2
找出str1的子串是否在str2中
两个指针i和j:i从头遍历到尾,找以str1[i]开头的子串中最长的在str2中的子串。j从尾倒着走,直到找到子串str1(i,j)在str2中为止。
JavaScript代码
let str1 = new String(readline());
let str2 = new String(readline());
let count = 0;
//print(str1);
//print(str2);
for(let i = 0; i < str1.length; i++){
for(let j = str1.length; j > i; j--){
let strc = str1.slice(i, j);
//print(strc);
if(str2.indexOf(strc)!=-1){
let len = strc.length;
if(len > count){
count = len;
}
break;
}
}
}
print(count);
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。