gpt4 book ai didi

c# - C#中支持两个相邻字母Transposition的Levenshtein编辑距离算法

转载 作者:太空宇宙 更新时间:2023-11-03 20:26:53 24 4
gpt4 key购买 nike

我正在寻找一种用于计算 Levenshtein 编辑距离的算法,该算法还支持在 C# 中实现的两个相邻字母转置的情况。

例如单词“animals”和“ainmals”:在字母“n”和“i”之间切换不会被计为两个替补 - 这将有很大的距离 -但是 on 将被评分为两个字母的转置 - 距离更小 -

到目前为止我在搜索中达到了什么

最佳答案

请参阅维基百科上的实现。您可以轻松地调整算法以包括字母交换的情况。例如:

//bla bla. I'm just copying the code on the Wikipedia.
d[i, j] := minimum
(
d[i-1, j] + 1, // a deletion
d[i, j-1] + 1, // an insertion
d[i-1, j-1] + 1, // a substitution
)

// This single statement is all you need:
if(s[i-1]==t[j-2] && s[i-2]==t[j-1])
d[i,j] := minimum
(
d[i,j], //cost without swapping
d[i-2,j-2]+something //cost with swapping. probably something=1
);

关于c# - C#中支持两个相邻字母Transposition的Levenshtein编辑距离算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10178043/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com