题解 | #计算字符串的距离#

计算字符串的距离

http://www.nowcoder.com/practice/3959837097c7413a961a135d7104c314

while True:
    try:
        s1, s2 = input(), input()
        n1, n2 = len(s1), len(s2)
        # 初始化数组dp
        dp = [[0] * (n2+1) for _ in range(n1+1)]
        # 初始化边界
        for i in range(1, n2+1):
            dp[0][i] = i
        for i in range(1, n1+1):
            dp[i][0] = i
        # 遍历两个字符串
        for i in range(1, n1+1):
            for j in range(1, n2+1):
                if s1[i-1] == s2[j-1]:
                    dp[i][j] = dp[i-1][j-1]
                else:
                    dp[i][j] = min(dp[i-1][j-1], dp[i-1][j], dp[i][j-1]) + 1
        print(dp[n1][n2])
    except:
        break
全部评论

相关推荐

Aurora23:属于挂一半,暂时进池子了,隔一段时间没有其他组捞的话就彻底结束了
点赞 评论 收藏
分享
09-01 21:40
已编辑
同济大学 Java
点赞 评论 收藏
分享
评论
4
1
分享

创作者周榜

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