English 中文(简体)
固定匹配算法
原标题:String matching algorithm

Say I have 3 strings. And then 1 more string.
Is there an algorithm that would allow me to find which one of the first 3 strings matches the 4th string the most?
None of the strings are going to be exact matches, I m just trying to find the closest match.
And if the algorithm already exists in STL, that would be nice.

提前感谢。

最佳回答

你没有具体说明你通过“充其量”的含义,因此我假定你没有确切的要求。 在该案中,Levenshtein gap,在合理的尺度上。 简单地计算了三个阵列和第四座之间的Levenshtein距离,取出距离最低的距离。

问题回答

您可执行Levenshtein Distance算法,它提供了一种非常精确的衡量标准,说明你在两个阵列之间如何接近。 它衡量了你需要做的多少次重要工作,才能把一个扼杀变成另一个。 http://www.merriam Park.com/ldcpp.htm“rel=“nofollow”>here。

Compute Levenshtein 第4号指示与你的三个指示之间的距离。 穿透距离最小。

There s nothing ready in the STL, but what you need is some kind of string metric.

你有直截了当的问题。 视你想要做什么,你将使用不同的 algorithm。 有许多。 关于STL,我不知道执行这些公报的任何职能,但你可以看。 此外,注意到如果你从一个数据库中获取你的指示,那么你的数据库发动机很可能实施其中一些分析(很可能是SOUNDEX)。





相关问题
How to add/merge several Big O s into one

If I have an algorithm which is comprised of (let s say) three sub-algorithms, all with different O() characteristics, e.g.: algorithm A: O(n) algorithm B: O(log(n)) algorithm C: O(n log(n)) How do ...

Grokking Timsort

There s a (relatively) new sort on the block called Timsort. It s been used as Python s list.sort, and is now going to be the new Array.sort in Java 7. There s some documentation and a tiny Wikipedia ...

Manually implementing high performance algorithms in .NET

As a learning experience I recently tried implementing Quicksort with 3 way partitioning in C#. Apart from needing to add an extra range check on the left/right variables before the recursive call, ...

Print possible strings created from a Number

Given a 10 digit Telephone Number, we have to print all possible strings created from that. The mapping of the numbers is the one as exactly on a phone s keypad. i.e. for 1,0-> No Letter for 2->...

Enumerating All Minimal Directed Cycles Of A Directed Graph

I have a directed graph and my problem is to enumerate all the minimal (cycles that cannot be constructed as the union of other cycles) directed cycles of this graph. This is different from what the ...

Quick padding of a string in Delphi

I was trying to speed up a certain routine in an application, and my profiler, AQTime, identified one method in particular as a bottleneck. The method has been with us for years, and is part of a "...

热门标签