72. Edit Distance
Question
Given two strings
word1
andword2
, return the minimum number of operations required to convertword1
toword2
.You have the following three operations permitted on a word:
- Insert a character
- Delete a character
- Replace a character
Solution
本题和583. Delete Operation for Two Strings
大同小异。
动态规划,两个字符串的分别以长宽组成一个矩阵,记录该位置得编辑距离。
将初始的编辑距离dp[i][0]一行和dp[0][j]一列按照对应的位置i和j填写。
双重遍历矩阵的坐标。
当两个字符相等时,编辑距离等于对角线方向的状态的编辑距离(即两个字符都没有取得上一个状态)。
当两个字符不相等时,编辑距离等于左边,上边(少取一个字符的状态)以及对角线方向(两个字符都不取的状态)的编辑距离中得最小值再加上1。
Code
1 | class Solution { |
72. Edit Distance