Как работает алгоритм программного обеспечения Beyond Compare?

Мне любопытно узнать, как работает алгоритм "вне сравнения"?

Я думаю, что есть стандарт (хорошо известный?) алгоритм, который они использовали для реализации " символа .против персонажа" сравнение. Вы знаете название этого алгоритма? Спасибо

1 ответов


Beyond Compare использует ряд различных алгоритмов в зависимости от типа файла и конфигурации. В v4 алгоритмы выравнивания линий явно названы в интерфейсе:

  • стандартное выравнивание-это собственный алгоритм; мы не сделали детали общедоступными.

  • Myers o (ND) alignment - это тот же самый, что и GNU diff утилита и большинство других приложений используют. Он основан на документе " AN O(ND) разностный алгоритм и его вариации " Юджина Майерса (1986).

  • терпение Diff выравнивание - это алгоритм" терпение Diff", который Брэм Коэн первоначально разработал для Bazaar, о котором он говорит здесь.

выравнивание символов для выделения различий внутри строк основано на алгоритме Myers O(ND) с некоторой последующей обработкой для очистки результатов.