我正在用 php 编写一个工具来比较 HTML 文件并显示差异。现在我正在寻找一种有效的方法来计算两个 HTML 文件之间的百分比差异。这些文件可以任意长(我拥有的文件可以长达 300000 个字符)。
经过一番研究,我偶然发现了 Levensthein 距离,它是 O(n*m) 的算法,需要空间 O(n*m):php 版本最多只能支持 255 个字符和我自己的 O(n) 空间实现,太慢了。之后,我尝试了php函数similar_text,但该算法对于非常大的HTML文件也太慢了。
所以现在我正在寻找另一种更有效的算法来比较 HTML 文件。近似算法也很好。谁能给我一些关于如何做到这一点的建议?