18得票5回答
Java:两个列表之间的区别

我的公司的猫牧应用程序追踪一队猫。定期地,它需要比较previousOrder和currentOrder(每个都是ArrayList<Cat>),并通知猫管理员任何更改。 每只猫都是独特的,并且在每个列表中只能出现一次(或者根本不出现)。大多数情况下,previousOrder和...

17得票5回答
转换文件树到另一个的最短操作序列

给定两个文件树A和B,是否有可能确定将A转换为B所必需的最短操作序列或短操作序列? 操作可以是: 创建一个新的空文件夹 创建一个带任何内容的新文件 删除文件 删除空文件夹 重命名文件 重命名文件夹 将一个文件移动到另一个现有文件夹中 将一个文件夹移动到另一个现有文件夹中 当A和B拥有...

17得票2回答
如何确定中文字符的Levenshtein距离?

我们正在开发一个系统,使用UTF-8,UTF-16和UTF-32 Unicode字符标准,在50多种国际语言中进行模糊匹配。到目前为止,我们已经能够使用Levenshtein距离检测德语Unicode扩展字符单词的拼写错误。 我们希望将此系统扩展到处理Unicode表示的汉语汉字。我们将如何...

16得票2回答
寻找所有子字符串的编辑距离算法

给定2个字符串s和t,我需要找到每个子字符串与t的编辑距离(Levenshtein距离)。实际上,我需要知道对于s中的每个i位置,从该位置开始的所有子字符串的最小编辑距离是多少。 例如: t = "ab" s = "sdabcb" 我需要得到类似以下的内容: {2,1,0,2...

16得票2回答
使用后缀树进行近似子字符串匹配

本文讨论了近似子字符串匹配技术,它们利用后缀树来提高匹配时间。每个答案都涉及不同的算法。 近似子字符串匹配试图在字符串T中找到一个子串(模式)P,最多允许k次不匹配。 要学习如何创建后缀树,请点击这里。然而,一些算法需要额外的预处理。 我邀请大家添加新的算法(即使不完整)并改进答案。

15得票8回答
当样本数量较大时,计算字符串相似度得分的高效方法是什么?

假设你有一份包含10,000个电子邮件地址的列表,并且你想找到在该列表中非常接近的“邻居”——即被定义为在列表中与其他电子邮件地址非常接近的电子邮件地址。 我知道如何计算两个字符串之间的Levenshtein距离(感谢这个问题),它将给出一个得分,表示需要多少操作才能将一个字符串转换成另一个...

14得票1回答
如何将Levenshtein距离归一化为最大对齐长度而不是字符串长度?

问题: 一些R包具有Levenshtein距离实现,用于计算两个字符串的相似性,例如http://finzi.psych.upenn.edu/R/library/RecordLinkage/html/strcmp.html。 计算出的距离可以轻松地针对字符串长度进行归一化,例如通过将Leven...

13得票3回答
更快的算法来计算最长公共子序列(LCS)的长度

问题:需要计算两个字符串的最长公共子序列的长度。字符串的大小最多为100个字符。字母表是通常的DNA字母表,包括4个字符“ACGT”。动态规划方法不够快。 我的问题是,我处理了成千上万对字符串(据我所见,排名在数百万之内)。我认为我已经将LCS_length函数的调用最小化,因此使程序运行更...

12得票6回答
有没有一种编辑距离算法可以考虑"块置换"?

我在引号中使用了"块置换",因为我不知道该过程的技术术语是否存在或应该是什么。只要知道该过程是否有技术术语将非常有帮助。 维基百科编辑距离文章提供了该概念的一些良好背景知识。 通过考虑"块置换",我意思是Turing, Alan. 应该匹配Alan Turing 更紧密地匹配,而不是完全匹...

12得票20回答
给定两个字符串,判断它们是否只有一个编辑操作的距离。

最近我遇到了这个问题:Given two strings, return true if they are one edit away from each other,else return false. An edit is insert/replace/delete a character...