基础算法精讲·题目汇总
- fork自灵神GitHub,但是他的题单页面点击不会新开标签页跳转,本 灵茶山艾府。 制作了一系列算法教学视频,整理成合集【基础算法精讲】。以下是合集中的视频链接、配套题目和代码,代码包含 Python/Java/C++/Go 等多种语言。
来自评论区:1,把视频里的经典题型看懂,然后把作业题全刷一遍,最好都能做出来,不能做出来就看完答案自己写一遍。2,跟练完一个视频后总结,概括这类题型的答案框架,在固定框架之外总结针对同一题型下不同题目条件变化导致代码细节变化的原因。3,每次面试前把自我总结和视频经典题代码都看一遍(适当复习非常重要
专题目录
| 序号 | 专题 | 视频 |
|---|---|---|
| 01 | [[01-相向双指针(一)]] | 视频 |
| 02 | [[02-相向双指针(二)]] | 视频 |
| 03 | [[03-滑动窗口]] | 视频 |
| 04 | [[04-二分查找]] | 视频 |
| 05 | [[05-二分查找 - 变形]] | 视频 |
| 06 | [[06-链表 - 反转系列]] | 视频 |
| 07 | [[07-链表 - 快慢指针]] | 视频 |
| 08 | [[08-链表 - 删除系列]] | 视频 |
| 09 | [[09-二叉树与递归 - 深入理解]] | 视频 |
| 10 | [[10-二叉树与递归 - 灵活运用]] | 视频 |
| 11 | [[11-二叉树与递归 - 前序中序后序]] | 视频 |
| 12 | [[12-二叉树与递归 - 最近公共祖先]] | 视频 |
| 13 | [[13-二叉树 - BFS]] | 视频 |
| 14 | [[14-回溯 - 子集型]] | 视频 |
| 15 | [[15-回溯 - 组合型与剪枝]] | 视频 |
| 16 | [[16-回溯 - 排列型]] | 视频 |
| 17 | [[17-动态规划 - 从记忆化搜索到递推]] | 视频 |
| 18 | [[18-0-1背包 完全背包]] | 视频 |
| 19 | [[19-最长公共子序列 LCS]] | 视频 |
| 20 | [[20-最长递增子序列 LIS]] | 视频 |
| 21 | [[21-状态机 DP - 买卖股票系列]] | 视频 |
| 22 | [[22-区间 DP]] | 视频 |
| 23 | [[23-树形 DP - 直径系列]] | 视频 |
| 24 | [[24-树形 DP - 最大独立集]] | 视频 |
| 25 | [[25-树形 DP - 最小支配集]] | 视频 |
| 26 | [[26-单调栈]] | 视频 |
| 27 | [[27-单调队列]] | 视频 |
完整算法题单
🔥如何科学刷题? 包含核心刷题路线
- 滑动窗口与双指针(定长/不定长/单序列/双序列/三指针/分组循环)
- 二分算法(二分答案/最小化最大值/最大化最小值/第K小)
- 单调栈(基础/矩形面积/贡献法/最小字典序)
- 网格图(DFS/BFS/综合应用)
- 位运算(基础/性质/拆位/试填/恒等式/思维)
- 图论算法(DFS/BFS/拓扑排序/最短路/最小生成树/二分图/基环树/欧拉路径)
- 🔥动态规划(入门/背包/状态机/划分/区间/状压/数位/数据结构优化/树形/博弈/概率期望)
- 🔥常用数据结构(前缀和/差分/栈/队列/堆/字典树/并查集/树状数组/线段树)
- 数学算法(数论/组合/概率期望/博弈/计算几何/随机算法)
- 贪心与思维(基本贪心策略/反悔/区间/字典序/数学/思维/脑筋急转弯/构造)
- 链表、二叉树与回溯(前后指针/快慢指针/DFS/BFS/直径/LCA/一般树)
- 字符串(KMP/Z函数/Manacher/字符串哈希/AC自动机/后缀数组/子序列自动机)