Delete Operation for Two Strings LeetCode solution in Java

1
class Solution {
2
public int minDistance(String word1, String word2) {
3
int n = word1.length();
4
int m = word2.length();
5

6
int[][] dp = new int[n + 1][m + 1];
7

8
for (int i = 0; i < n; i++) {
9
dp[i][0] = 0;
10
}
11

12
for (int i = 0; i < m; i++) {
13
dp[0][i] = 0;
14
}
15

16
for (int i = 1; i <= n; i++) {
17
for (int j = 1; j <= m; j++) {
18
if (word1.charAt(i - 1) == word2.charAt(j - 1)) {
19
dp[i][j] = 1 + dp[i - 1][j - 1];
20
} else {
21
dp[i][j] = Math.max(dp[i - 1][j], dp[i][j - 1]);
22
}
23
}
24
}
25

26
int common = dp[n][m];
27
return (n + m) - (2 * common);
28
}
29
}

0

WPM •0 •0

100%

ACC •0 •0

0s

TIME •0