Как работает программный алгоритм Beyond Compare?

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

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


person dilip    schedule 08.04.2015    source источник


Ответы (1)


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

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

  • Выравнивание Myers O(ND) — это то же самое, что используется утилитой GNU diff и большинством других приложений. Он основан на статье Юджина Майерса (1986) "Разностный алгоритм O(ND) и его варианты".

  • Выравнивание Терпения Диффа — это алгоритм «Терпения Диффа», который Брэм Коэн первоначально разработал для Bazaar, о котором он рассказывает здесь. .

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

person Zoë Peterson    schedule 01.05.2015