LCS 最大公共序列算法
来源:互联网 发布:淘宝上货软件多少钱 编辑:程序博客网 时间:2024/06/05 19:16
这些天在了解chrome的courgette, 了解了rsync算法, 也了解了courgette使用了bsdiff 算法, 然后知道了bsdiff算法里主要使用的是 LCS 算法, 这里参考了july大牛的文章:
http://blog.csdn.net/v_july_v/article/details/6695482
自己做一点概括性的总结, 用以备忘, 也把自己学习中碰到的一些问题记录下来:
1、LCS 求最大子序列, 一个办法当然是穷举法了, 但是穷举法太耗时间了O(2^m*2^n), 基本没用.
2、聪明的程序员想到了,一个用矩阵来查找的算法,就是把两个队列用整形矩阵表示, 相同的为1, 不同的为0, 然后求最大对角线,优化是优化了很多, 不过求最大对角线也不省心。
3、聪明的程序员再次优化了算法,就是相同的不是用1表示, 而是数字叠加,这样再找最大对角线的时候,就比较舒服了,时间复杂度也降到了 O(mn)+O(m+n) 如下图:
在画上图的时候碰到了一些问题,自己总结成两条:
1、字符相同,则指向左上,并加1
2、字符不同,则指向左边或者上边较大的那个
- LCS 最大公共序列算法
- LCS 最大公共序列算法
- LCS 最大公共序列算法
- LCS 最大公共序列算法
- LCS 最大公共序列算法
- LCS 最大公共序列算法
- LCS 最大公共序列算法
- LCS 最大公共序列算法
- LCS 最大公共序列算法粗略讲解
- 最大公共子序列(LCS算法)
- LCS 最大公共子序列算法详解
- LCS最大公共子序列
- 最大公共子序列LCS
- LCS 最大公共子序列
- HDU1503:Advanced Fruits LCS 最大公共序列算法
- LCS最大公共子序列O(nlogn)算法
- LCS算法&最大公共子串&最长公共子序列 PHP 实现
- hdu 1159 LCS最大公共子序列
- spring3.0.5的mvc使用(exception,json,annotation,xml,upload/download)
- 如何用Itunes来安装Ipa文件
- wxPyhon编程应用之HostEditor V1.0
- 如何提高英语水平之听力篇
- G代码介绍
- LCS 最大公共序列算法
- 把页面信息保存为csv文件
- 关于ASP.NET同页面内【用户控件与父页面】以及【用户控件与用户控件】之间方法调用/传值 一点点经验
- EXCEL 导出
- AlarmManager的使用
- jdbcweb-开发-国际化
- 基于51单片机的花样流水灯仿真(代码)
- setTimeout/setInterval 传参
- matlab中绘制带有errorbar误差标的曲线和直方图的方法