我一直在看Paul Heckel 的 Diff 算法,但我似乎没有完全理解它。
我复制了 Python 代码中所示的步骤 1-5,但我无法使用算法的最后一步来显示差异。如果有人解释了最后一步以及 Python 代码,我将不胜感激。
另外,我不完全理解为什么您需要参考第 4 步和第 5 步中的表格行,因此对此的解释也太棒了!
非常感谢
这是我当前的代码:
def find_diff(current_file_as_list, different_file_as_list):
N = current_file_as_list
O = different_file_as_list
table = {}
OA = []
NA = []
for i in O:
OA.append(i)
for i in N:
NA.append(i)
# First pass
i = 0
for line in N:
if not line in table:
table[line] = {}
table[line]["NC"] = 1
else:
if table[line]["NC"] == 1:
table[line]["NC"] = 2
else:
table[line]["NC"] = …Run Code Online (Sandbox Code Playgroud)