mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-07 15:45:40 +08:00
添加0583 两个字符串的删除操作 Python解法2
This commit is contained in:
@ -234,6 +234,25 @@ class Solution:
|
||||
return dp[-1][-1]
|
||||
```
|
||||
|
||||
> 版本 2
|
||||
|
||||
```python
|
||||
class Solution(object):
|
||||
def minDistance(self, word1, word2):
|
||||
m, n = len(word1), len(word2)
|
||||
|
||||
# dp 求解两字符串最长公共子序列
|
||||
dp = [[0] * (n+1) for _ in range(m+1)]
|
||||
for i in range(1, m+1):
|
||||
for j in range(1, n+1):
|
||||
if word1[i-1] == word2[j-1]:
|
||||
dp[i][j] = dp[i-1][j-1] + 1
|
||||
else:
|
||||
dp[i][j] = max(dp[i-1][j], dp[i][j-1])
|
||||
|
||||
# 删去最长公共子序列以外元素
|
||||
return m + n - 2 * dp[-1][-1]
|
||||
```
|
||||
### Go:
|
||||
|
||||
```go
|
||||
|
Reference in New Issue
Block a user