mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 08:50:15 +08:00
更新 0583.两个字符串的删除操作.md Java代码
添加另一种动态规划思路
This commit is contained in:
@ -128,6 +128,28 @@ public:
|
|||||||
|
|
||||||
Java:
|
Java:
|
||||||
```java
|
```java
|
||||||
|
// dp数组中存储word1和word2最长相同子序列的长度
|
||||||
|
class Solution {
|
||||||
|
public int minDistance(String word1, String word2) {
|
||||||
|
int len1 = word1.length();
|
||||||
|
int len2 = word2.length();
|
||||||
|
int[][] dp = new int[len1 + 1][len2 + 1];
|
||||||
|
|
||||||
|
for (int i = 1; i <= len1; i++) {
|
||||||
|
for (int j = 1; j <= len2; j++) {
|
||||||
|
if (word1.charAt(i - 1) == word2.charAt(j - 1)) {
|
||||||
|
dp[i][j] = dp[i - 1][j - 1] + 1;
|
||||||
|
} else {
|
||||||
|
dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return len1 + len2 - dp[len1][len2] * 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// dp数组中存储需要删除的字符个数
|
||||||
class Solution {
|
class Solution {
|
||||||
public int minDistance(String word1, String word2) {
|
public int minDistance(String word1, String word2) {
|
||||||
int[][] dp = new int[word1.length() + 1][word2.length() + 1];
|
int[][] dp = new int[word1.length() + 1][word2.length() + 1];
|
||||||
|
Reference in New Issue
Block a user