La Plus Courte Distance De Levenshtein? Ai-je besoin?

Je veux regarder un String dans un String[] pour le meilleur match de la requête. J'ai entendu parler de Levenshtein. Mais je ne peut pas déterminer si j'en ai besoin ou pas.

Suppose, j'ai un String query = "Examples" et

String[] arrayStr = new String[] {"The Examples String", "The Example String", "Example", "Examples String", "Example String", "Examplestring"};

Maintenant, je veux obtenir le Example de la String[] comme le meilleur match.

Donc, ai-je besoin de Levenshtein pour le faire?

Sinon, Si quelqu'un peut m'indiquer une mise en œuvre rapide de Levenshtein pour Java, il serait grand. Je voudrais vérifier si il fonctionne avec tous les type de chaînes que j'ai. (En gros j'ai autour de 10k chaînes pour le match de 10k tableaux).

en.wikibooks.org/wiki/Algorithm_Implementation/Strings/...
La distance de Levenstein est tout simplement la quantité de charactes vous avez à ajouter/supprimer/modifier pour transformer une piqûre dans l'autre. il n'a pas vraiment dire quelque chose à propos de la qualité du match. ex. "exemple" -> "exemples très populaire sting" -> distance de 34 et "exemple" -> "attendu esperluette leçon" -> distance de 18 ans. Je doute que la plus courte distance de levenstein toujours de vous donner le meilleur match
Vous avez tort, car il n'.
Ok si tu le dis, je suppose que vous êtes en droit. je n'ai jamais essayé cet algorithme. @Writwick: Si vous ne voulez pas de les appliquer sur votre propre, vous pouvez tout aussi bien utiliser de la mise en œuvre de Apache commons StringUtils: commons.apache.org/proper/commons-lang/javadocs/api-2.6/org/...

OriginalL'auteur Writwick | 2013-06-24