首页 > 其他分享 >经典dp之字符串最小编辑距离

经典dp之字符串最小编辑距离

时间:2023-03-06 12:47:51浏览次数:58  
标签:min 字母 最小 字符串 操作 dp

经典dp之字符串最小编辑距离

模板题

给定两个串a,b,然后有3个操作:增加任意一个字母,删除任意一个字母,改变某个字母,然后问将a变成b要多少次操作

这位大佬已经讲得很详细了
\(f[i][j]=min(f[i][j],f[i][j-1]+1)\) 这里转移是本来i位就匹配了j-1位,现在多了j,就要增加一个字母\(b[j]\)
同理 \(f[i][j]=min(f[i][j],f[i-1][j]+1)\) 这里转移是本来i-1位就匹配了j位,现在多了i,就要删了\(a[i]\),理解这两个很重要,不然这两种操作花费不同的话就寄了。

个人的一些感悟

1.做这种题毫无疑问是用dp,时间复杂度都是在O(nm)的,数据范围在1e4以内吧。
2. 每道题可能初始化数据都不同,这点需要思考。
3. 但是万变不离其宗,它变出花来也不会难太多的。
4. 优化:在时间上是优化不了多少的了,空间上可以弄个滚动数组

遇到的一些题(遇到一道加一道)

CF 67 C
这个多了一个操作,交换相邻两个字母
最优包含
这个只有一个修改操作,简单一点

标签:min,字母,最小,字符串,操作,dp
From: https://www.cnblogs.com/LIang2003/p/17183348.html

相关文章