草庐IT

levenshtein-distance

全部标签

php - 具有错误字符容忍度的最长公共(public)子串

我在这里找到了一个脚本,它在寻找最低公共(public)子串时效果很好。但是,我需要它来容忍一些不正确/缺失的字符。我希望能够输入所需的相似度百分比,或者指定允许的缺失/错误字符数。例如,我要查找这个字符串:黄色大校车这个字符串的内部:那天下午他们乘坐了大黄校车这是我目前使用的代码:functionlongest_common_substring($words){$words=array_map('strtolower',array_map('trim',$words));$sort_by_strlen=create_function('$a,$b','if(strlen($a)==s

php - 在单词拼写错误的地方打点

我正在用PHP创建一个网络应用程序,人们可以在其中尝试翻译他们需要在学校学习的单词。例如,某人需要将荷兰语单词“weer”翻译成英语中的“weather”,但不幸的是他输入了“whether”。因为他差一点就打错了,我想再试一次,在他打错的地方打上点“.”:LanguageA:weerLanguageB:weatherInput:whetherOutput:w..ther或者,例如LanguageA:foutLanguageB:mistakeInput:mitakeOutput:mi.take或者:LanguageA:echtLanguageB:genuineInput:genuine

php - cost 在 php 的 levenshtein 函数中比较字符串是什么意思?

我正在学习php的levenshteinfunction在小型redis实例中创建搜索以获取匹配项,即使提交的搜索词中存在拼写错误。虽然其中的大部分内容都是不言自明的,但我正在努力了解如何最好地使用三个不同的cost参数。intlevenshtein(string$str1,string$str2,int$cost_ins,int$cost_rep,int$cost_del)文档中有简短的解释Asecondvariantwilltakethreeadditionalparametersthatdefinethecostofinsert,replaceanddeleteoperation

PHP - 优化 - 具有优先级的 Levenshtein 距离

我正在尝试实现levenshteinalgorithm有一个小插件。我想优先考虑具有连续匹配字母的值。我尝试使用以下代码实现我自己的形式:functionlevenshtein_rating($string1,$string2){$GLOBALS['lvn_memo']=array();returnlev($string1,0,strlen($string1),$string2,0,strlen($string2));}functionlev($s1,$s1x,$s1l,$s2,$s2x,$s2l,$cons=0){$key=$s1x.",".$s1l.",".$s2x.",".$s2

java - Levenshtein 到 Damerau-Levenshtein

我坐在这里用Java为我的主程序编写一些算法(这是迄今为止的第一个)。我对levenshtein算法进行了很好的编程,这要归功于wiki对新手的伪代码非常好,还有一个很好的教程:D然后我决定升级到Damerau并添加了额外的行,但后来我读到它不是DL算法而是OptimalStringAlignmentDistance。我尝试阅读actionscript代码以了解我还需要添加什么才能将其添加到DL,但却感到困惑。我去过不同的地方,代码看起来与Java相似,但他们也都使用了错误的伪代码。折腾了半天就放弃了,决定在这里问问。有没有人可以帮助我将此代码升级到Java中的Damerau-Leve

Java 二维 : Moving a point P a certain distance closer to another point?

将Point2D.Doublex距离移近另一个Point2D.Double的最佳方法是什么?编辑:试图编辑,但因维护而停机。不,这不是作业我需要将飞机(A)移向跑道(C)的尽头并将其指向正确的方向(角度a)。alttexthttp://img246.imageshack.us/img246/9707/planec.png这是我目前所拥有的,但看起来很乱,做这样的事情通常的方法是什么?//coordinate=planecoordinate(Point2D.Double)//Distance=maxdistancetheplanecantravelinthisframeTrianglet

java - Java中Levenshtein算法的问题

我想使用Levenshteinalgorithm对于以下任务:如果我网站上的用户搜索某个值(他在输入中输入字符),我想立即使用AJAX检查建议,就像GoogleInstant一样。我的印象是Levenshtein算法对于这样的任务来说太慢了。为了检查它的行为,我首先用Java实现它,在方法的每次递归调用中打印出两个String。publicclassLevenshtein{publicstaticvoidmain(String[]arg){Stringa="HalloZusammen";Stringb="jfdssZusammen";intres=levenshtein(a,b);Sy

java - 如何找到两个多行字符串之间的相似度百分比?

我有两个多行字符串。我正在使用以下代码来确定其中两个之间的相似性。这利用了Levenshtein距离算法。publicstaticdoublesimilarity(Strings1,Strings2){Stringlonger=s1,shorter=s2;if(s1.length()0){intnewValue=costs[j-1];if(s1.charAt(i-1)!=s2.charAt(j-1))newValue=Math.min(Math.min(newValue,lastValue),costs[j])+1;costs[j-1]=lastValue;lastValue=newV

java - 修改编辑距离算法以不计算所有距离

我正在研究模糊搜索实现,作为实现的一部分,我们使用Apache的StringUtils.getLevenshteinDistance。目前,我们正在为我们的模糊搜索寻求特定的最大平均响应时间。经过各种增强和一些分析后,花费最多时间的地方是计算Levenshtein距离。它大约占搜索字符串三个或更多字母的总时间的80-90%。现在,我知道这里可以做的事情有一些限制,但我已经阅读了以前的SO问题和LD的维基百科链接,如果有人愿意将阈值限制为设定的最大距离,那可以帮助减少花在算法上的时间,但我不确定如何准确地做到这一点。Ifweareonlyinterestedinthedistanceif

java - 文本自动更正的动态算法

我正在编写一个使用levenshteindistance的自动更正程序纠正基于包含8000个单词的特定词典的不超过64个字符的短语。字典的每一行都包含一对“Wordword_frequency”。我使用DictionarEntry对象来存储这些对。ClassDictionarEntry有两个字段:value:存储单词字符串freq:存储频率字典存储为LinkedList。我从stdin读取了64个字符的字符串。在处理它之前,我删除了所有空格。“酷天气”->“酷天气”我注意到在由levenshtein动态计算的矩阵的最后一行中计算每个前缀的levenshtein距离(参见维基百科示例)它