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

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

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

str1, str2 = input(), input()
n = 0
if len(str1) > len(str2):
    str1, str2 = str2, str1
for i in range(len(str1)):
    k = i
    for j in range(len(str2)):
        if k <= len(str1)-1:
            if  str1[k] == str2[j]: # 如果两个字母相同,那么对于str1往后加1,并继续判断,
                k = k+1
                if k-i > n:
                    n = k-i # 字符串的长度
                    result = str1[i:k] # 该长度对应的字符串
            else: k = i # 如果断掉了,那么这个k就回到了i那里,不再叠加
print(result)

全部评论

相关推荐

否极泰来来来来:解约赔多少
点赞 评论 收藏
分享
用微笑面对困难:只要你保证项目和获奖都是真的就行尤其是“对战,总负责人”啊这些套职,基本上队员,打杂的都这么写
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务