合并两个字符串(文本文件)

时间:2011-01-12 14:01:13

标签: c# .net merge string-comparison

  

可能重复:
  Any decent text diff/merge engine for .NET ?

我有两个文本文件,我想以某种方式合并。第一个是第二个版本的编辑版本。

是否有任何可用的开源工具可以帮助我?

编辑:我想找到两个文件之间的更改,并在更新代码文件时将其合并为subversion。

1 个答案:

答案 0 :(得分:2)

参见本文中的示例:http://en.wikipedia.org/wiki/Longest_common_subsequence_problem

首先你有两个大文件。然后你应该找到他们最长的公共子序列(LCS)并将文件分成三部分:

1:在LCS之前;
2:LCS;
3:LCS之后。

然后你应该比较独立的部分“1”和部分“2”(你有一个递归)。 迭代地,你减少了比较的安全性。

总复杂度将介于O(n * log(n))和O(n * n)之间。