Skip to content

Latest commit

 

History

History
29 lines (20 loc) · 658 Bytes

72.-edit-distance.md

File metadata and controls

29 lines (20 loc) · 658 Bytes

72. Edit Distance

class Solution:
    def minDistance(self, word1: str, word2: str) -> int:
## 这题居然没做过 难以置信
        n = len(word1)
        m = len(word2)
        dp = [[float("inf")] * (m + 1) for _ in range(n + 1)]

        for i in range(n + 1):
            dp[i][0] = i

        for j in range( m + 1):
            dp[0][j] = j


        for i in range(1, n + 1):
            for j in range(1, m + 1):

                if word1[i-1] == word2[j-1]:
                    dp[i][j] = dp[i-1][j-1]

                else:
                    dp[i][j] = min(dp[i-1][j],dp[i][j-1],dp[i-1][j-1]) + 1

        return dp[n][m]