LC072 - Edit Distance
Last updated
Last updated
def minDistance(self, word1: str, word2: str) -> int:
arr = [[float("inf") for _ in range(len(word2) + 1)] for _ in range(len(word1) + 1)]
for j in range(len(word2) + 1):
arr[len(word1)][j] = len(word2) - j
for i in range(len(word1) + 1):
arr[i][len(word2)] = len(word1) - i
# for length of words:
for i in range(len(word1)-1, -1, -1):
for j in range(len(word2)-1, -1, -1):
if word1[i] == word2[j]:
arr[i][j] = arr[i+1][j+1]
else:
arr[i][j] = 1 + min(arr[i+1][j], arr[i][j+1], arr[i+1][j+1])
return arr[0][0]