【发布时间】:2015-04-08 06:28:00
【问题描述】:
我很想知道“Beyond Compare”的算法是如何工作的?
我猜他们有一个标准的(众所周知的?)算法来实现“字符.vs.字符”比较。你知道这个算法的名字吗?谢谢
【问题讨论】:
标签: compare diff beyondcompare beyondcompare3
我很想知道“Beyond Compare”的算法是如何工作的?
我猜他们有一个标准的(众所周知的?)算法来实现“字符.vs.字符”比较。你知道这个算法的名字吗?谢谢
【问题讨论】:
标签: compare diff beyondcompare beyondcompare3
Beyond Compare 使用多种不同的算法,具体取决于文件类型和配置。在 v4 中,线对齐算法在界面中明确命名:
标准对齐 - 这是一种专有算法;我们尚未公开详细信息。
Myers O(ND) 对齐 - 这与 GNU diff 实用程序和大多数其他应用程序使用的相同。它基于 Eugene Myers (1986) 的论文“An O(ND) Difference algorithm and its variation”。
Patience Diff 对齐 - 这是 Bram Cohen 最初为 Bazaar 开发的“Patience Diff”算法,他谈到了 here。
突出显示行内差异的字符对齐基于 Myers O(ND) 算法,并进行了一些后处理以清理结果。
【讨论】: