文件比较算法
来源:互联网 发布:java框架设计 编辑:程序博客网 时间:2024/06/06 16:28
晚上有个哥们问有没什么文件比较的算法可以用,大致想了一下,顺便记一记。
处理分两层:
第一层——文本行层,这一层比较单位为行,将每一行看作一个元素,那么两个文件就是两个元素序列,采用LCS算法,算出相同的元素数,相同元素数越多,相似度越大。考虑不同的比较中总文件行数有差异,不能直接用相同元素数这个值作为相似度,应该将两个待比较文件总元素数考虑在内,可以采用 相似度=相同元素数/(文件1元素数+文件2元素数)。
复杂度分析:
如果第二层采用简单判断的方式,那么整个算法的时间复杂度是O(n^2 * m),如果第二层采用相似度判断的方式,那么整个算法的复杂度是o(n^2 * m^2),其中n为文件内文本行数,m为行内字符数。
- 文件比较算法(1)
- 文件比较算法(2)
- 文件比较算法
- 关于不同文件比较的算法
- 算法比较
- 使用Python的MD5算法比较两个文件
- 利用MD5算法快速比较文件是否相同
- 文件比较
- 算法---比较排序算法
- 算法---比较排序算法
- 算法--算法运行时间比较
- [算法】各种排序算法比较
- 内部排序算法比较
- 内部排序算法比较
- 字符串hash算法比较
- 字符串hash算法比较
- 字符串hash算法比较
- 排序算法比较程序
- Easyui + MVC 系列教程 第09-17 节 完成登录 高清录制
- 字典设计
- Summary of Programming Principles
- Spring + iBatis 的多库横向切分简易解决思路
- Qt中foreach详解
- 文件比较算法
- mac系统下Android SDK更新以及ADT无法在线下载
- Easyui + MVC 系列教程 第19-23 节 完成注销 登录限制过滤 添加用户
- 窗口右下角弹窗
- static控件
- 如何使得界面中的值与listview上的item相对应
- 索引
- WinForm中 事件 委托 多线程的应用【以一个下载进度条为例】
- 随机生成100万个数,排序后保存在文件中