Skip to content

附录 D · 学习路径与备考规划 ​

面向已通过五级、准备攻克六级的读者:知识地图 → 三阶段路径 → 8 周计划 → 自测清单 → 考场时间分配 → 五级→六级衔接 → 向七级衔接。


一、知识地图(依赖关系的正确顺序) ​

第1章 总览(先建立全局视野)
   │
   ├─> 第7章 栈与队列 ──────────┐
   │     (BFS 要用队列)        │
   │                            ↓
   ├─> 第2章 树与遍历 ──> 第3章 哈夫曼树与特殊树
   │                            │
   │                            ↓
   │                       第4章 搜索算法(DFS/BFS/回溯)
   │                            │
   │                            ↓
   └─> 第5章 简单动态规划(一维DP + 背包)
   │
   └─> 第6章 面向对象(相对独立,可穿插学习)

推荐顺序(兼顾依赖与难度): 第1章 → 第7章(栈队列)→ 第2章(树)→ 第3章(特殊树与编码)→ 第4章(搜索)→ 第5章(DP)→ 第6章(OOP)

第 6 章面向对象与其他章耦合度低,可以放在任意位置;若时间紧张,建议放在最后集中突破(记忆型考点多,遗忘快)。


二、三阶段路径 ​

阶段目标产出
第一阶段 · 建骨架(2~3 周)弄清六个知识块的"是什么、为什么、怎么写"每章的必背速记卡能默写
第二阶段 · 刷题固形(3~4 周)每章「实战练习」全部做完并订正错题本成型,套路可复述
第三阶段 · 模考冲刺(1~2 周)限时做整套,练时间分配与心态稳定达到 70+ 分

三、8 周计划(每周约 6~8 小时) ​

周次章节重点任务验收标准
第 1 周第 1 章 + 第 7 章前半总览过一遍;栈的性质与基本操作能手算栈的出栈序列合法性
第 2 周第 7 章后半队列、循环队列下标计算、优先队列循环队列四个公式全对
第 3 周第 2 章树的术语、性质、四种遍历三种递归遍历能手写
第 4 周第 2 章末 + 第 3 章前半遍历序列还原;哈夫曼树构造与 WPL前序+中序还原 3 道题全对
第 5 周第 3 章后半完全二叉树编号、BST、哈夫曼编码、格雷码BST 删除两孩情况能口述
第 6 周第 4 章DFS/BFS/回溯/visited/迷宫独立写出迷宫最短路
第 7 周第 5 章一维 DP、01 背包、完全背包01 背包一维倒序能默写
第 8 周第 6 章 + 全书复盘封装/继承/多态、构造析构顺序;两套限时卷自测清单全打勾

四、自测清单(第 8 周使用,全打勾即可报名) ​

  • [ ] 1. 能脱口而出二叉树的五条性质(含 n₀ = n₂ + 1)
  • [ ] 2. 给定前序 + 中序,能在 3 分钟内还原树并写出后序
  • [ ] 3. 能手工构造哈夫曼树并计算 WPL(两种算法都对得上)
  • [ ] 4. 完全二叉树:给定编号 i,能立刻说出父/左/右编号
  • [ ] 5. 能说明"为什么 BST 的中序遍历是升序"
  • [ ] 6. 能写出 G(n) = n ^ (n>>1) 并解释格雷码的特点
  • [ ] 7. 能不看模板写出 DFS 递归与 BFS 队列两套框架
  • [ ] 8. 能写出迷宫最短步数的完整程序(含 visited 与边界判断)
  • [ ] 9. 能默写 01 背包一维优化(倒序)与完全背包一维(正序)
  • [ ] 10. 能说清 DP 与贪心的区别,并举出一个贪心失败的反例
  • [ ] 11. 能写出一个带构造/析构/虚函数的最小类,并预测输出顺序
  • [ ] 12. 能默写循环队列的判空、判满、求元素个数三个公式
  • [ ] 13. 能独立完成括号匹配(栈)与层序遍历(队列)
  • [ ] 14. 两套自测卷均在 150 分钟内完成,得分 ≥ 70

五、考场时间分配(180 分钟) ​

阶段时长做什么
审题与单选0~35 分钟15 道单选,平均 2 分钟/道,卡住先跳过
判断题35~55 分钟10 道判断,注意"一定/必须/所有"等绝对词
编程题审题55~70 分钟两道题一起读,先做有把握的那道
编程题 170~110 分钟编码 + 自测样例 + 边界
编程题 2110~155 分钟同上,至少保证暴力/部分分
检查155~180 分钟复查选择题填涂、文件名、输入输出格式

⚠️ 最容易丢分的不是算法,是格式:文件名、输入方式、freopen、输出末尾换行——每年都有人栽在这里。


六、常见备考误区 ​

误区后果正确做法
只看不写看懂了但写不出每个模板至少手写 3 遍,脱离 IDE 也要能写
死记遍历顺序遇到程序阅读题就懵用"根什么时候被访问"来记,而不是硬背
循环队列公式靠感觉选择题必错四个公式抄在纸上,每天默写一遍
背包方向靠猜01/完全背反记住理由:倒序是为了防止同一件物品被选两次
学完 OOP 就放着考前全忘OOP 记忆型考点多,安排在最后 2 周
只在脑子里调试上机就错每题都要真跑一遍,至少测 3 组样例

七、五级 → 六级衔接自测(先修知识) ​

六级默认你已经掌握以下五级内容。若有 3 项以上打不了勾,请先回头补五级。

#先修点自测题✅
1数组与vector 基本操作能写出数组逆序、去重、计数⬜
2递归能写出斐波那契递归并说出其复杂度 O(2ⁿ)⬜
3快速排序 / 归并排序能手写出其中一个,并说出 O(n log n)⬜
4二分查找能在有序数组中写对 while (l <= r) 的边界⬜
5结构体 struct能定义结构体数组并排序⬜
6时间复杂度估算能判断两层嵌套循环的复杂度⬜
7贪心基本思想能举出活动安排问题的贪心策略⬜
8指针与引用的初步能解释"传值"与"传引用"的区别⬜

💡 衔接提示:六级的三大难点是树的递归思维、DP 的状态定义、循环队列的下标取模。前两者本质是"递归 + 抽象",正是五级的延伸;第三者纯靠手算熟练度。


八、通过之后:向七级衔接 ​

七级在六级基础上的新增内容:

七级知识块与六级的衔接点
数学库函数新增:<cmath> 的三角/对数/指数函数,弧度制是最大坑
复杂动态规划六级的一维 DP → 二维 DP、区间 DP、LIS、LCS、滚动数组
图的定义及遍历六级的树 → 一般图;DFS/BFS 从树上扩展到图上
图论算法(泛洪)六级的连通块 → Flood Fill 四连通/八连通
哈希表全新:unordered_map / 冲突处理 / 装填因子

过渡期两周计划:

  1. 第 1 周:把六级的 DFS/BFS 从"树"迁移到"图"(邻接矩阵 + 邻接表),这是七级的地基;
  2. 第 2 周:把一维 DP 升级为二维 DP(网格路径 + LCS),预习 <cmath> 常用函数。

本规划按每周 6~8 小时设计;若每天只能学 30 分钟,请把周期拉长到 12~16 周。

百炼成钢,融会贯通