2008-08-06 15 views
14

J'ai besoin d'implémenter un algorithme Diff dans VB.NET pour trouver les changements entre deux versions différentes d'un morceau de texte. J'ai eu un éclaireur sur le web et j'ai trouvé quelques algorithmes différents.Algorithme Diff 'Best'

Est-ce que quelqu'un ici connaît un «meilleur» algorithme que je pourrais implémenter?

+0

[Voici une autre bonne réponse] (http://stackoverflow.com/a/2817556/2388257) adaptée à votre question. –

Répondre

7

Eh bien, je l'ai utilisé la version C# sur CodeProject et son très bon pour ce que je voulais ...

http://www.codeproject.com/KB/recipes/diffengine.aspx

Vous pouvez probablement obtenir ce traduit en VB.net par un online converter si vous le pouvez « t do it yourself ...

+0

Cela devrait être un commentaire, comment a-t-il été accepté? Il n'y a même pas mention de l'algorithme diff utilisé dans le projet lié. –

7

J'aime An O(ND) Difference Algorithm and Its Variations par Eugene Myers. Je crois que c'est l'algorithme qui a été utilisé dans GNU diff. Pour un bon contexte, voir Wikipedia.

Ceci est assez théorique et vous pourriez souhaiter trouver le code source, mais je n'en connais aucun en VB.