排序、二分、回溯、动态规划、双指针。先记模板,再刷题。
共 5 篇,约 37 KB。
| # | 文档 | 要点 |
|---|---|---|
| 01 | 排序算法 | 排序是所有算法题的底座,真正要掌握的不是六份代码,而是每种排序在时间、空间、稳定性上的取舍。 |
| 02 | 二分查找 | 二分的前提是有序和随机访问,真正的难点不是写出循环,而是把区间定义和边界条件一次写对。 |
| 03 | 递归与回溯 | 递归把问题缩小成同类子问题,回溯在递归前后加上选择与撤销,两者合起来才能穷举所有可能。 |
| 04 | 动态规划 | 动态规划把指数级的重复枚举压成多项式,核心不是背方程,而是先定义出一个可递推的状态。 |
| 05 | 双指针与滑动窗口 | 双指针把两两枚举压成单向扫描,滑动窗口是它在连续区间上的特化,指针总移动次数仍是 O(n)。 |