算法
kiinghom
这个作者很懒,什么都没留下…
展开
-
最长单调递增子序列
问题描述: 给定一个序列X[0···n],找出它的最长的单调递增子序列(Longest Increasing Subsequence) 思路一: 用d[i] 表示以第i个数字为结尾的最长单调递增序列的长度,然后使用 d[i] = max(1, max(d[j] + 1: 1< j< i, a[i]>a[j])) 这个递推关系式计算,用反证法证明正确性,假设所有j < i, a[i] >原创 2017-06-24 18:47:33 · 253 阅读 · 0 评论 -
求de Bruijn图上与目标串最小编辑距离
使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图片上传 LaTex数学公式 UML序列图和流程图 离线写博客 导入导出Markdown文件 丰富的快捷键 快捷键 加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl +原创 2017-06-09 16:09:48 · 679 阅读 · 0 评论 -
寻找峰值
题目描述: 假设序列满足先单调递增然后单调递减,同时相邻数字不同,可以是只有单调递增或递减。问题是怎么能使访问元素的次数最少? 思路: 可以使用二分的方法,令mid = (left + right) mod 2, 然后检查a[m]和a[m-1], 如果a[m]>a[m-1], 那么最大值不可能在a[l…m-1], 反正不可能在a[m…r]. 访问次数为2*lg(n). (没有证明是最少次数的原创 2017-06-25 16:28:50 · 268 阅读 · 0 评论