算法杂
Vosky
生命不息,折腾不止
展开
-
[转]回文串判断算法——Manacher算法
以下文字转自 ddyyxx博客: Manacher算法总结Manacher算法总结算法总结第三弹 manacher算法,前面讲了两个字符串相算法——kmp和拓展kmp,这次来还是来总结一个字符串算法,manacher算法,我习惯叫他 “马拉车”算法。 相对于前面介绍的两个算法,Manacher算法的应用范围要狭窄得多,但是它的思想和拓展kmp算法有很多共通支出,所以在这里介绍一下。Manache转载 2016-04-09 22:06:57 · 13617 阅读 · 0 评论 -
动态规划:入门绝佳资料
作者:Hawstein出处:http://hawstein.com/posts/dp-novice-to-advanced.html声明:本文采用以下协议进行授权: 自由转载-非商用-非衍生-保持署名|Creative Commons BY-NC-ND 3.0 ,转载请注明作者及出处。前言我们遇到的问题中,有很大一部分可以用动态规划(简称DP)来解。 解决这类问题可转载 2016-04-28 22:02:33 · 878 阅读 · 0 评论 -
把《编程珠玑》读薄
目录开篇啊哈!算法数据决定程序结构编写正确的程序编程中的次要问题程序性能分析粗略估算算法设计技术代码调优节省空间排序取样问题搜索堆字符串转载 2016-04-28 22:04:11 · 1625 阅读 · 0 评论 -
【分步详解】两个有序数组中的中位数和Top K问题
这也是一道leetcode的经典题目:《LeetCode》解题笔记:004. Median of Two Sorted Arrays[H] 问题介绍预备知识先解释下割割和第k个元素双数组如何从双数组里取出第k个元素假设k3双数组的奇偶让数组恒为奇数映射关系在虚拟数组里表示割分治的思路怎么分怎么治越界问题代码问题介绍这个问题大致是说,如何在给定的两个有序数组里面找其中的中原创 2016-04-09 21:50:00 · 40108 阅读 · 28 评论 -
链表“倒数”问题两个解决思路
leetcode有道题就是问的这个问题: leetcode:Remove Nth Node From End of List[E]链表的问题这是链表中非常常见的问题,众所周知,链表慢就慢在遍历查找,而对于单链表来说,每次必须从头开始搜索,这样使得链表在处理“倒数”这个概念的时候,特别无力。常规的做法必须要2遍遍历:1遍计算链表长度len,1遍搜索倒数的元素len-n。(当然,你可以通过加入链表长度原创 2016-04-24 22:42:00 · 536 阅读 · 0 评论