跳到主要内容

算法教程

本节目标

205 道核心母题构成的系统算法学习路线。

这里不是按平台堆叠的题单,而是一条从基础实现到经典算法模型的学习路线。 适合已经掌握 C++ 或 Python 基础语法,正在准备考研复试、工作面试或省级算法竞赛的读者。

  • 精简路线:完成 150 道必学题。
  • 完整路线:在必学题之后继续完成 55 道拓展题。
  • 题解语言:C++17 与 Python 3。
  • 评测方式:点击原题入口,在 LeetCode 或 AcWing 提交。

建议严格按章节顺序学习;同一框架内按题目出现顺序练习。 路线图中的完成度表示站内题解的建设进度,不记录读者个人刷题进度。

11 章学习路线

  1. 01
    算法基础与问题建模

    建立复杂度、边界、递推和二进制表示的共同语言。

    必学 10 · 拓展 4 · 题解 14 / 14

    前置:掌握 C++ 或 Python 基本语法
  2. 02
    基础数据结构

    理解数据如何组织,再学习查询、更新和维护最值的通用方法。

    必学 14 · 拓展 4 · 题解 18 / 18

    前置:算法基础与问题建模
  3. 03
    排序、二分与分治

    利用有序性和问题规模缩减,把线性或平方搜索降到更低复杂度。

    必学 13 · 拓展 4 · 题解 17 / 17

    前置:算法基础与问题建模、基础数据结构
  4. 04
    数组与矩阵解题框架

    围绕连续区间、局部状态和二维坐标建立高频解题框架。

    必学 18 · 拓展 6 · 题解 24 / 24

    前置:算法基础与问题建模、基础数据结构
  5. 05
    字符串

    处理字符映射、解析、匹配和前缀结构。

    必学 11 · 拓展 4 · 题解 15 / 15

    前置:算法基础与问题建模、基础数据结构
  6. 06
    递归、搜索与回溯

    定义状态、选择路径、撤销选择,并在状态图中寻找可行解或最短步数。

    必学 13 · 拓展 4 · 题解 17 / 17

    前置:算法基础与问题建模、基础数据结构
  7. 07
    树与二叉树

    从遍历顺序、递归返回值和路径状态出发,统一二叉树构造、判断、变换与综合问题。

    必学 16 · 拓展 6 · 题解 22 / 22

    前置:基础数据结构、递归、搜索与回溯
  8. 08
    图论

    把关系建成图,再根据边权、方向和连通性选择遍历或路径算法。

    必学 15 · 拓展 8 · 题解 23 / 23

    前置:基础数据结构、递归、搜索与回溯、树
  9. 09
    贪心

    通过交换论证、区间排序或局部不变量证明当前选择安全。

    必学 13 · 拓展 5 · 题解 18 / 18

    前置:排序、二分与分治、数组与矩阵解题框架
  10. 10
    动态规划

    从状态定义、转移来源和遍历顺序出发,依次掌握线性、序列、背包、网格、区间、树形、状态压缩与数位动态规划。

    必学 21 · 拓展 9 · 题解 30 / 30

    前置:算法基础与问题建模、递归、搜索与回溯、树
  11. 11
    数学

    从质数、整除和同余关系出发,依次掌握组合计数、数学建模、博弈与计算几何入门。

    必学 13 · 拓展 5 · 题解 18 / 18

    前置:算法基础与问题建模