2015-04-08 49 views
5

我很想知道'Beyond Compare'算法是如何工作的?比较软件算法如何工作?

我想有一个标准(众所周知的)算法,他们用来实现“字符.vs。字符”比较。你知道这个算法的名字吗?谢谢

回答

7

Beyond Compare根据文件类型和配置使用了许多不同的算法。在v4中,线对齐算法明确命名为接口:

  • 标准对齐 - 这是一种专有算法;我们尚未公布详细信息。

  • Myers O(ND)alignment - 这与GNU diff实用程序和大多数其他应用程序使用的一样。它基于Eugene Myers(1986)的论文“An O(ND)差分算法及其变体”。

  • 耐心差异对齐 - 这是Bram Cohen最初为Bazaar开发的“耐心差异”算法,他谈到了here

突出显示行内差异的字符对齐是基于Myers O(ND)算法以及一些后处理来清理结果。