gpt4 book ai didi

string - 如何有效地检查两个字符串之间的 Levenshtein 编辑距离是否为 1

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:16:14 26 4
gpt4 key购买 nike

<分区>

请注意,它不需要真正计算 Levenshtein 编辑距离。只需检查它是否为 1。

方法的签名可能是这样的:

bool Is1EditDistance(string s1, string s2). 

例如:1. "abc"和 "ab"返回真2. "abc"和 "aebc"返回真3. "abc"和 "a"返回 false。

我试过递归批准,但效率不高。


更新:得到 friend 的回答:

        for (int i = 0; i < s1.Length && i < s2.Length; i++)
{
if (s1[i] != s2[i])
{
return s1.Substring(i + 1) == s2.Substring(i + 1) //case of change
|| s1.Substring(i + 1) == s2.Substring(i) //case of s1 has extra
|| s1.Substring(i) == s2.Substring(i + 1); //case of s2 has extra
}
}
return Math.Abs(s1.Length - s2.Length) == 1;

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