会员
周边
众包
新闻
博问
闪存
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
乘风有时
Powered by
博客园
博客园
|
首页
|
新随笔
|
联系
|
订阅
|
管理
2017年5月2日
C++基础之泛型算法
摘要: 标准库并未给每个容器添加大量功能,因此,通过大量泛型算法,来弥补。这些算法大多数独立于任何特定的容器,且是通用的,可用于不同类型的容器和不同的元素。 迭代器使得算法不依赖容器,但是算法依赖于元素的类型操作;例如某些算法需要元素支持"<"运算。 算法永远不会执行容器操作,它们只会运行于迭代器之上,执行
阅读全文
posted @ 2017-05-02 22:55 乘风有时
阅读(234)
评论(0)
推荐(0)
编辑
KMP算法
摘要: KMP算法,是由Knuth,Morris,Pratt共同提出的模式匹配算法,其对于任何模式和目标序列,都可以在线性时间内完成匹配查找,而不会发生退化,是一个非常优秀的模式匹配算法。但是相较于其他模式匹配算法,该算法晦涩难懂,第一次接触该算法的读者往往会看得一头雾水,主要原因是KMP算法在构造跳转表n
阅读全文
posted @ 2017-05-02 17:44 乘风有时
阅读(140)
评论(0)
推荐(0)
编辑
[LeetCode]Shortest Palindrome
摘要: 题目:Shortest Palindrome 给定字符串,在前面增加最少字符使其组成回文字符串。 思想: 只要找到从字符串头部开始的最长回文子串,就能将剩下的字符串逆置后拼接到前面而得到最短的回文字符串。 但是这样时间复杂度是O(n^2)无法通过。 思路: 考虑使用KMP算法。 KMP算法是匹配字符
阅读全文
posted @ 2017-05-02 17:43 乘风有时
阅读(144)
评论(0)
推荐(0)
编辑
[LeetCode]House Robber
摘要: 题目:House Robber 给定一个数组求最大和,要求求和的每个元素不能相邻。 思路: 不要想太复杂,每次记录当前的最大值和前一个位置的最大值,然后比较即可。 具体就是动态规划的思想: F(i)表示数组前i项中符合上面要求的最大和;choose(i) = true表示F(i)的和中第i项被选中了
阅读全文
posted @ 2017-05-02 14:32 乘风有时
阅读(130)
评论(0)
推荐(0)
编辑