暴力递归
汉诺塔问题
字符串所有子集(子序列)
打印字符串的全排列(done)
process(str)省空间做法。
不重复:去掉注释部分。
术语:分支限界。(剪枝)
背包问题
N皇后
前缀树
问题:
- “bc”:前缀树中有没有这个字符串。(Hash表也可以实现)
- “ab”:前缀树中多少以 “ab” 作为前缀的字符串,根据 “b”路径尾节点的 pass 值就可以获得。(Hash表没法做到)
跟节点表示什么意思:
- pass表示前缀树中包含多少个字符串;
- pass表示有多少字符串是以空串作为前缀的;
- end表示有多少个空串;
贪心算法
基础知识
会议安排问题
铜板切割问题
最小堆 + 哈夫曼编码。
项目利润
数据流中位数
大根堆和小根堆配合使用。
- 较小的 n/2 个数放到大根堆里,,较大的 n/2 个数放到小根堆里。
- 时间复杂度 log(n)
KMP-P12
课程:P12
位置:1:20
next arr 最长前缀和最长后缀相等的串。
算法:
代码例子:
时间复杂度分析:
next数组求解:
滑动窗口-P13
P13
位置:1:43
单调栈-P13
P13
位置:2:11:15
树型 dp 套路
P14:
大数据问题
P15