我一直在疯狂地解释有效且高效的diff算法。
我得到的最接近的是指向RFC 3284的链接(来自Eric Sink的几篇博客文章),该链接以完全可以理解的方式描述了差异结果存储的数据格式。但是,它没有提及程序在进行比较时如何达到这些结果。
我试图出于个人好奇心进行研究,因为我敢肯定在实施diff算法时必须权衡取舍,当您查看diff并想知道“为什么diff程序为什么选择此作为更改时,这很清楚而不是那个?” ...
在哪里可以找到最终输出VCDIFF的有效算法的描述?
顺便说一句,如果您碰巧找到SourceGear的DiffMerge使用的实际算法的描述,那就更好了。
注意:最长的公共子序列似乎不是VCDIFF使用的算法,在给定使用的数据格式的情况下,它们看起来似乎在做些更聪明的事情。
DIEA