class Solution {
public int minDistance(String word1, String word2) {
int n = word1.length();
int m = word2.length();
int[][] dp = new int[n+1][m+1];
for(int i=1;i<=n;i++){
dp[i][0] = i;
}
for(int i=1;i<=m;i++){
dp[0][i] = i;
}
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(word1.charAt(i-1)==word2.charAt(j-1)){
dp[i][j] = dp[i-1][j-1];
}
else dp[i][j] = Math.min(dp[i-1][j-1]+2,Math.min(dp[i-1][j],dp[i][j-1])+1);
}
}
// for(var arr:dp)
// System.out.println(Arrays.toString(arr));
return dp[n][m];
}
}
相关文章
- 代码随想录算法训练营第三十九天
- 代码随想录算法训练3day| 链表理论基础 、203.移除链表元素、707.设计链表 、 206.反转链表。
- 代码随想录算法训练1day| 数组理论基础、704. 二分查找、27. 移除元素.。
- 代码随想录算法训练营Day 3|LeetCode203 移除链表元素、Leetcode707 设计链表、Leetcode206 反转链表
- 【代码随想录训练营第42期 Day37打卡 - 动态规划Part5 - 完全背包问题
- 代码随想录算法训练营--打卡day8
- 代码随想录算法训练营第三天|203.移除链表元素 707.设计链表 206.反转链表
- 代码随想录算法训练营第六天|242.有效的字母异位词 349. 两个数组的交集 202.快乐数 1. 两数之和
- 代码随想录算法训练营第二天|977.有序数组的平方、209.长度最小的子数组、59.螺旋矩阵II
- 代码随想录算法训练营第一天 | 704.二分查找、27.移除元素