📚

GESP 5/6/7/8 级 C++ 教案

四个级别 · 65 课 · 给 12 岁同学的 eli5 学习包

🗺️ 从这里出发

本学习包包含 GESP 五级(22 课)、GESP 六级(15 课)、GESP 七级(14 课)和 GESP 八级(14 课)四个部分,按顺序学:先五级,再六级、七级,最后八级。每课都是一个自包含网页,有比方、大图、子任务(带小检查)、完整代码和练习。

五级GESP 五级教案目录(22 课):数论 · 高精度 · 链表 · 算法→ 六级GESP 六级教案目录(15 课):树 · 图 · 动态规划 · 栈与队列 · 面向对象→ 七级GESP 七级教案目录(14 课):数学库函数 · 复杂动态规划 · 图与遍历 · 哈希表→ 八级GESP 八级教案目录(14 课):组合数学 · 倍增法与初中数学 · 图论算法 · 复杂度与优化→

五级📋 GESP 五级知识点大纲

  1. 初等数论:素数与合数、最大公约数与最小公倍数、同余与模运算、约数与倍数、质因数分解、奇偶性。
  2. 高精度运算(C++ 特有):数组模拟高精度加、减、乘、除。
  3. 链表:创建、插入、删除、遍历、反转;单链表、双链表、循环链表的区别。
  4. 数论算法:辗转相除法(欧几里得算法)、埃氏筛法与线性筛法、唯一分解定理。
  5. 复杂度估算:算法复杂度估算方法(含多项式、对数)。
  6. 二分法:二分查找和二分答案(二分枚举法),在有序数组中快速定位目标值。
  7. 递归:递归基本原理与应用,分析时间/空间复杂度,了解递归优化策略。
  8. 贪心:贪心基本原理,理解最优子结构,用贪心解题。
  9. 分治:分治基本原理,用归并排序和快速排序排序。
五级 22 课:数论 6 课(01-06)→ 高精度 4 课(07-10)→ 链表 2 课(11-12)→ 算法 10 课(13-22)。完整目录与术语中英对照在 五级目录页。

六级📋 GESP 六级知识点大纲

  1. 树的基本概念、构造与遍历
  2. 哈夫曼树、完全二叉树、二叉排序树
  3. 哈夫曼编码、格雷编码
  4. DFS / BFS / 二叉树搜索
  5. 简单动态规划(一维 DP、简单背包)
  6. 面向对象:封装、继承、多态,类的创建与使用
  7. 栈、队列、循环队列
六级 15 课:树 7 课(01-07)→ 图搜索 2 课(08-09)→ 动态规划 2 课(10-11)→ 栈与队列 2 课(12-13)→ 面向对象 2 课(14-15)。比五级更详细:每课拆成 3~4 个子任务,每个子任务有小目标、手推演算和带答案的小检查。

六级🗂️ 六级教案目录(15 课,按模块分组)

🌳 模块 A · 树(7 课)
01🌳 树与二叉树的基本概念→ 02🌀 二叉树的遍历:前/中/后序→ 03🏗️ 层序遍历与完全二叉树的数组存储→ 04🎒 哈夫曼树→ 05📡 哈夫曼编码→ 06🔍 二叉排序树(BST)→ 07🔀 格雷编码→
🕳️ 模块 B · 图搜索(2 课)
08🕳️ 深度优先搜索 DFS→ 09🌊 广度优先搜索 BFS→
🪜 模块 C · 动态规划(2 课)
10🪜 动态规划入门与一维 DP→ 11🎒 0/1 背包→
🍱 模块 D · 栈与队列(2 课)
12🍱 栈→ 13🎢 队列与循环队列→
🏠 模块 E · 面向对象(2 课)
14🏠 面向对象:类与封装→ 15🐶 面向对象:继承与多态→

七级📋 GESP 七级知识点大纲

  1. 数学库常用函数:三角函数 sin(x)、cos(x);对数函数 log2(x)、log10(x);指数函数 exp(x)。
  2. 复杂动态规划:二维 DP、最值优化、区间 DP、最长上升子序列 LIS、最长公共子序列 LCS、基于滚动数组的空间优化。
  3. 图的定义及基本图论算法:图的定义、有向图/无向图、节点度;图的数据结构表示;基于 DFS/BFS 的图搜索与遍历;泛洪(flood fill)算法。
  4. 哈希表:概念、知识及其应用。
七级 14 课:数学库函数 2 课(01-02)→ 复杂 DP 5 课(03-07)→ 图与遍历 5 课(08-12)→ 哈希表 2 课(13-14)。前置:六级 DP(10-11 课)与图搜索(08-09 课),建议按顺序学。

七级🗂️ 七级教案目录(14 课,按模块分组)

📐 模块 A · 数学库函数(2 课)
01🎡 三角函数:sin 与 cos→ 02🧮 对数与指数:log2、log10、exp→
🪜 模块 B · 复杂动态规划(5 课)
03🧭 二维动态规划入门→ 04📈 最长上升子序列 LIS→ 05🧬 最长公共子序列 LCS→ 06🧱 区间 DP→ 07🎠 滚动数组:给 DP 表减肥→
🕳️ 模块 C · 图定义与遍历(5 课)
08🚇 图是什么 + 邻接矩阵→ 09📇 邻接表→ 10🕳️ 图的深度优先搜索 DFS→ 11🌊 图的广度优先搜索 BFS→ 12🪄 泛洪算法→
🗃️ 模块 D · 哈希表(2 课)
13📚 哈希表:用「编号」找东西→ 14⚡ 哈希表应用:unordered_map / unordered_set→

八级📋 GESP 八级知识点大纲

  1. 计数原理:加法原理、乘法原理。
  2. 排列与组合:排列、组合的基本概念,基础排列组合编程问题。
  3. 杨辉三角:定义、实现、与组合的关系。
  4. 倍增法:概念、时间复杂度(O(log n))。
  5. 代数与平面几何(初中数学):一元一次方程、二元一次方程;三角形、圆形、长方形面积。
  6. 图论算法及综合应用:最小生成树(概念、Kruskal、Prim);最短路径(概念、Dijkstra、Floyd);综合应用与问题求解技巧。
  7. 算法的时间和空间效率分析:一般分析方法;各类算法(排序、查找、树图遍历、搜索、分治、DP)的复杂度。
  8. 算法优化:不同方法的时空差异;数学知识辅助优化(如等差数列和用公式);一般优化技巧。
八级 14 课:组合数学 4 课(01-04)→ 倍增法与初中数学 3 课(05-07)→ 图论算法 5 课(08-12)→ 复杂度与优化 2 课(13-14)。八级是 GESP 最高级:组合数学 + 初中代数几何 + 四大图论算法(Kruskal / Prim / Dijkstra / Floyd)+ 复杂度分析。前置:七级模块 C(图 + DFS/BFS)、五级排序与 C16 复杂度估算、七级 C07 滚动数组,建议按顺序学。完整目录与术语中英对照在 八级目录页。

八级🗂️ 八级教案目录(14 课,按模块分组)

🎲 模块 A · 组合数学(4 课)
01🎲 计数原理:加法与乘法→ 02🏃 排列:顺序有关系的计数→ 03📸 组合:顺序没关系的计数→ 04🔺 杨辉三角:数字金字塔→
⚡ 模块 B · 倍增法与初中数学(3 课)
05🚀 倍增法:快速幂→ 06⚖️ 一元一次与二元一次方程→ 07🏠 平面几何:面积计算→
🌉 模块 C · 图论算法(5 课)
08🌉 最小生成树:Kruskal 算法→ 09🌱 Prim 算法:从一点长成一棵树→ 10💧 Dijkstra:单源最短路→ 11🗺️ Floyd:任意两点最短路→ 12🧰 图论工具箱:选对工具→
⏱️ 模块 D · 复杂度分析与优化(2 课)
13⏱️ 时间和空间复杂度分析→ 14🚄 算法优化:同样的事做得更快→