热门问题
时间线
聊天
视角
编辑距离
来自维基百科,自由的百科全书
Remove ads
编辑距离是针对二个字符串(例如英文字)的差异程度的量化量测,量测方式是看至少需要多少次的处理才能将一个字符串变成另一个字符串。编辑距离可以用在自然语言处理中,例如拼写检查可以根据一个拼错的字和其他正确的字的编辑距离,判断哪一个(或哪几个)是比较可能的字。DNA也可以视为用A、C、G和T组成的字符串,因此编辑距离也用在生物资讯学中,判断二个DNA的类似程度。Unix 下的 diff 及 patch 即是利用编辑距离来进行文本编辑对比的例子。
编辑距离有几种不同的定义,差异在可以对字符串进行的处理。
Remove ads
kitten和sitting的莱文斯坦距离是3。将kitten变为sitting的最小处理方式如下:
- kitten → sitten(将k改为s)
- sitten → sittin(将e改为i)
- sittin → sitting(最后加入g)
若是考虑LCS距离(只考虑加入及删除),LCS距离是5:
- 删除位在第1个字的k
- 在第1个字之前加入s
- 删除位在第4个字的e
- 在第4个字之前加入i
- 在第6个字之前加入g
参考资料
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads