动态规划之编辑距离
1、问题
例如两个字符串 FAMILY 和 FRAME ,有两种
对齐方式:
1)、
F_A MIL Y
FRAME
2)、
_FAMILY
FRAME
第 1 种对齐需要付出的代价: 4 ,插入 R ,将 I 替换为 E ,删除 L 、 Y 。
第 2 种对齐需要付出的代价: 5 ,插入 F,将 F 替换为 R ,将 I 替换为 E ,删除 L 、 Y 。
编辑距离是指将一个字符串变换为另一个字符串所需要的最小编辑操作。
怎么找到两个字符串 x [1 ,...,m ] 和 y [1 ,...,n ] 的编辑距离
2、分析
假设已经知道 d [ i ][ j ] 是 X i ={ x 1 ,x 2 ,x 3 ,...,x i } 和 Y j ={ y 1 ,y 2 ,y 3 ,...,y j } 的编辑距离,分3种情况
1)
x1, x2, x3, x4, x(i - 1), x(i)
y1, y2, y3, y4, y(j - 1), _
推出
d [ i ][ j ]= d [ i −1][ j ]+1
2)
x1, x2, x3, x4, x(i - 1), x(i)
y1, y2, y3, y4, y(j - 1), _
推出
d [ i ][ j ]= d [ i ][ j −1]+1
3)
x1, x2, x3, x4, x(i - 1), x(i)
y1, y2, y3, y4, y(j -
文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。
原文链接:chenyu.blog.csdn.net/article/details/79704735
- 点赞
- 收藏
- 关注作者
评论(0)