这里不是按平台堆叠的题单,而是一条从基础实现到经典算法模型的学习路线。
适合已经掌握 C++ 或 Python 基础语法,正在准备考研复试、工作面试或省级算法竞赛的读者。
- 精简路线:完成 150 道必学题。
- 完整路线:在必学题之后继续完成 55 道拓展题。
- 题解语言:C++17 与 Python 3。
- 评测方式:点击原题入口,在 LeetCode 或 AcWing 提交。
建议严格按章节顺序学习;同一框架内按题目出现顺序练习。
路线图中的完成度表示站内题解的建设进度,不记录读者个人刷题进度。
11 章学习路线
- 01
算法基础与问题建模建立复杂度、边界、递推和二进制表示的共同语言。
必学 10 · 拓展 4 · 题解 14 / 14
前置:掌握 C++ 或 Python 基本语法 - 02
基础数据结构理解数据如何组织,再学习查询、更新和维护最值的通用方法。
必学 14 · 拓展 4 · 题解 18 / 18
前置:算法基础与问题建模 - 03
排序、二分与分治利用有序性和问题规模缩减,把线性或平方搜索降到更低复杂度。
必学 13 · 拓展 4 · 题解 17 / 17
前置:算法基础与问题建模、基础数据结构 - 04
数组与矩阵解题框架围绕连续区间、局部状态和二维坐标建立高频解题框架。
必学 18 · 拓展 6 · 题解 24 / 24
前置:算法基础与问题建模、基础数据结构 - 05
字符串处理字符映射、解析、匹配和前缀结构。
必学 11 · 拓展 4 · 题解 15 / 15
前置:算法基础与问题建模、基础数据结构 - 06
递归、搜索与回溯定义状态、选择路径、撤销选择,并在状态图中寻找可行解或最短步数。
必学 13 · 拓展 4 · 题解 17 / 17
前置:算法基础与问题建模、基础数据结构 - 07
树与二叉树从遍历顺序、递归返回值和路径状态出发,统一二叉树构造、判断、变换与综合问题。
必学 16 · 拓展 6 · 题解 22 / 22
前置:基础数据结构、递归、搜索与回溯 - 08
图论把关系建成图,再根据边权、方向和连通性选择遍历或路径算法。
必学 15 · 拓展 8 · 题解 23 / 23
前置:基础数据结构、递归、搜索与回溯、树 - 09
贪心通过交换论证、区间排序或局部不变量证明当前选择安全。
必学 13 · 拓展 5 · 题解 18 / 18
前置:排序、二分与分治、数组与矩阵解题框架 - 10
动态规划从状态定义、转移来源和遍历顺序出发,依次掌握线性、序列、背包、网格、区间、树形、状态压缩与数位动态规划。
必学 21 · 拓展 9 · 题解 30 / 30
前置:算法基础与问题建模、递归、搜索与回溯、树 - 11
数学从质数、整除和同余关系出发,依次掌握组合计数、数学建模、博弈与计算几何入门。
必学 13 · 拓展 5 · 题解 18 / 18
前置:算法基础与问题建模