Pergunta

Preciso implementar um algoritmo Diff em VB.NET para encontrar as alterações entre duas versões diferentes de um trecho de texto.Eu fiz uma pesquisa na web e encontrei alguns algoritmos diferentes.

Alguém aqui conhece o 'melhor' algoritmo que eu poderia implementar?

Foi útil?

Solução

Bem, eu usei a versão c# no codeproject e é muito boa para o que eu queria...

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

Você provavelmente pode traduzir isso para VB.net por meio de um conversor on-line se você não consegue fazer isso sozinho...

Outras dicas

Eu gosto Um algoritmo de diferença O(ND) e suas variações por Eugene Myers.Acredito que seja o algoritmo usado no GNU diff.Para um bom histórico, veja Wikipédia.

Isso é bastante teórico e você pode querer encontrar o código-fonte, mas não conheço nenhum em VB.

Não sei ao certo se são os melhores algoritmos de comparação, mas você pode querer dar uma olhada nos links que falam sobre SOCT4 e SOCT6

http://dev.libresource.org/home/doc/so6-user-manual/concepts

e também:
http://www.loria.fr/~molli/pmwiki/uploads/Main/so6group03.pdf http://www.loria.fr/~molli/pmwiki/uploads/Main/diffalgo.pdf

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top