from os.path import join # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param str1 string字符串 # @param str2 string字符串 # @return int整型 # class Solution: def editDistance(self , str1: str, str2: str) -> int: # write code here m,n = len(str1),len(str2) # 创建一个(m+1)* (n+1)的二维数组 dp = [[0] * (n+1) for _ in range(m+1) ] # 初始化 for i in range(m+1): dp[i][0] = i #删除 for j in range(n+1): dp[0][j] = j # 插入 for i in range(1,m+1): for j in range(1,n+1): if str1[i-1] == str2[j-1]: dp[i][j] = dp[i-1][j-1] else: dp[i][j] = min(dp[i][j-1]+1,dp[i-1][j]+1,dp[i-1][j-1]+1) return dp[m][n]