实现功能:对比找出两段文本中不同的段落
实现原理:依次递归找出文本中的最大匹配段落,直至最后没有剩下的没有匹配的段落,即是不同的段落
实现思路:把文本按换行符切分成数组,如果将数组视为一个字符串,那么问题就转化为求两个字符串的最长公共子串
实现算法: 求两个字符串的最长公共子串,一般都会使用动态规划算法。但代码中对动态规划算法进行了优化,传统的动态规划算法都会初始化一个 N * N 的二维数组, 这里仅用了两个对象存储对比数据,通过重复复用实现了一样的功能,相对于原本的算法空间复杂度减少了 N/2 倍。