数据结构期末前 7 天怎么复习:线性表、树、图、排序按天排表

作者:SeekFlaw 求瑕 内容组 · 发布于 2026-11-13 · 更新于 2026-11-13

这份排表用到 5 张官方图 · 共 72 张卡截至 2026-11-14 · 站内统计

先说结论

数据结构考前 7 天:前 4 天每天一组新考点(线性表栈队列、树、图、查找排序),后 3 天只手画过程自测、补错题、默写复杂度对照表。

用我的课件做一张能翻面自测的导图

点开后输入框里已经填好「期末复习 数据结构 二叉树遍历」,换成你要考的章节、贴上课件就行。

按天排表

  1. 第 1 天:盘点,学线性表、栈和队列:先按老师划的范围把课程拆成四组:线性表与栈队列、树与二叉树、图、查找与排序,没讲过的去掉。今天学第一组。样题:顺序表和链表各适合什么操作?答:顺序表按位置访问是 O(1),在中间插入删除要移动元素,平均约移动一半元素,O(n);链表在已知结点后插入删除是 O(1),但按位置访问要从头走,O(n)。栈后进先出,队列先进先出。检查办法:不看笔记,手画一个链表头插、尾删的过程。
    对应官方图:示例 · 考前 7 天突击路线
  2. 第 2 天:学树与二叉树,先回头过第 1 天:先遮住答案过第 1 天,再学第二组。样题:先序、中序、后序遍历的顺序是什么?由哪两种序列能唯一确定一棵二叉树?答:先序根左右,中序左根右,后序左右根;先序加中序、后序加中序能唯一确定,先序加后序一般不能。二叉树性质:叶子结点数 n₀ 等于度为 2 的结点数 n₂ 加 1。检查办法:给一棵 7 个结点的树,手写三种遍历序列,再用先序加中序还原这棵树。
    对应官方图:示例 · 遗忘曲线复习日历
  3. 第 3 天:学图,回头过前两天:先清前两天的卡。样题:图的广度优先和深度优先遍历各用什么结构?答:广度优先用队列,深度优先用栈(或递归)。最短路径的 Dijkstra 算法不能处理带负权的边;最小生成树常用 Prim 和 Kruskal 算法。检查办法:给一张 6 个顶点的图,手写从某顶点出发的两种遍历序列,并手算一次最小生成树。
  4. 第 4 天:学查找与排序,这是最后一天学新的:先清前三天,再学最后一组。样题:快速排序、归并排序、堆排序、直接插入排序的时间复杂度和稳定性?答:快速排序平均 O(n log n)、最坏 O(n²)、不稳定;归并 O(n log n)、稳定、要额外 O(n) 空间;堆排序 O(n log n)、不稳定;直接插入 O(n²)、稳定。二分查找要求有序的顺序存储,O(log n)。哈希冲突常用开放定址和拉链法。检查办法:手写一次快速排序的每一趟,把过程画出来。
  5. 第 5 天:遮住答案,手画过程:不学新的。数据结构的题大多要求「写出过程」:遍历序列、每趟排序结果、插入删除后的结构。四组各挑一道,先自己画再对答案。检查办法:每道题都有一步步的图或表,不是只写最终结果。
    对应官方图:示例 · 四种自测形式
  6. 第 6 天:只补前几天暴露的洞:用「错题复盘三栏法」:错因、挂回哪个考点、哪天不看答案重做。常见错因:遍历序列写错顺序;排序「一趟」的结果和「完全排完」混淆;复杂度只记最好情况;链表操作改指针的顺序错了,导致断链。检查办法:每道错题三栏填满,重做日排在考前一天之前。
    对应官方图:示例 · 错题复盘三栏法
  7. 第 7 天:只扫易错点,默写复杂度对照表:默写一张表:线性表、栈队列的基本操作复杂度;各种排序的平均、最坏复杂度和稳定性;查找的复杂度。再过一遍易错点:二叉树性质 n₀=n₂+1;Dijkstra 与负权;BFS 用队列、DFS 用栈。晚上备好证件、文具,照平时的时间睡。检查办法:对照表默写后核对,错的行单独抄一遍。
    对应官方图:示例 · 考前一晚清单

这页用到的示例导图(共 5 张)

这些是讲复习方法的通用导图,不是这门课的知识点图;卡数是 2026 年 10 月 19 日按有背面的叶子卡统计的,导图以后有改动,以图为准。

学习方法示例导图

这张表是怎么排的

把数据结构拆成四个考点组:线性表与栈队列、树与二叉树、图、查找与排序。前 4 天每天学一组新的,学之前先清前几天的旧卡;第 5 到第 7 天不学新的,手画过程、补错、默写对照表。

数据结构的题有两类:记结论(复杂度、性质),和走过程(遍历、排序每趟、插入删除)。前一类靠问答卡回忆,后一类靠手画,所以每天的检查办法都带一道「画出来」的题。

数据结构常见的失分类型

常见失分类型,来自对典型题型的归纳,不是统计数据:遍历序列顺序写反;排序算法「第几趟」的结果写成最终结果;复杂度和稳定性记混;链表指针操作的先后顺序错了。

这些都靠手画过程能发现,所以第 5 天不要求写代码,要求画图。

为什么后三天只自测、不学新的

Dunlosky 等人(2013)的综述评估了十种常见学习方法,据摘要,练习测验和分散练习评为高效用,重读评得较低(全文未读)。所以第 5 到第 7 天的做法是遮住答案先自己写、自己说,再核对,不是把笔记再读一遍。

Cepeda 等人(2006)综述了分散练习的实验,据摘要,要记的时间越长,合适的复习间隔也越长;要撑到一周内的考试,间隔可以短。所以这张表把复习挤在 7 天里,每天先过旧的、再学新的。

这张表的边界

数据结构各校的教学大纲、教材版本、考试形式差别很大,这页拆的「考点组」是常见章节的示例拆法,不是任何学校的考试范围;有的学校用 C,有的用 C++ 或 Java,代码题的写法按你们课程来;没讲过的图算法或高级结构直接删掉。

我们没有做过对照实验,不承诺提分,也不预测考什么。样题答案是常见结论的简写,遇到和你们教材、老师讲法不一致的地方,以教材和老师为准。

常见问题

数据结构考试要写代码吗?
各校不同,以老师的考试通知为准。这张表的前 4 天以问答卡和手画过程为主;如果考代码,把第 5 天的手画换成手写,并用第 6 天上机验证。
算法太多记不住怎么办?
先记「做了什么、用什么结构、复杂度」三件事,不背代码;第 7 天默写对照表就是把这三件事摊开。这个办法没验证过。
只剩 3 天还来得及吗?
来得及,但要压缩:把前 4 天的新学压成 2 天(只学老师划过重点的组),中间 1 天只自测,最后 1 天只扫错题和易错点。压缩后没验证过效果,能做的是把「不学新的」那一天保住。
每天要花多长时间?
这张表没有规定时长,按你手头的时间缩放:每天的任务是「一组新考点 + 回头过旧的 + 一道手写题」。每天几小时由你的课表决定,我们没有测过多久合适。
一定要用 SeekFlaw 才能这样排吗?
不用。把每组考点拆成问答卡,按表里的天数摊,纸笔或别的卡片工具都行。用我们的工具复习时,复习日期由 FSRS 按你的评分算,这张表是手排示例,不是产品的排期。
照这张表复习,成绩一定会提高吗?
不一定,我们也不承诺。排法依据的是分散练习和练习测验的研究,不是针对这门课期末成绩的实验。

信息来源

SeekFlaw 求瑕是一款 AI 学习工具:把课件、讲义生成思维导图,每个节点翻面就是一张记忆卡,按遗忘曲线(FSRS 算法)安排复习。

标签:数据结构期末复习数据结构考前一周数据结构复习计划二叉树遍历图的遍历排序算法复杂度时间复杂度期末复习间隔重复记忆卡AI学习工具