总体知识大纲

第一部分:绪论

考点 掌握程度 关键内容
数据结构三要素 理解 逻辑结构、存储结构、数据运算
逻辑结构分类 掌握 线性、树形、图形、集合
存储结构分类 掌握 顺序、链式、索引、散列
时间复杂度分析 熟练 大O表示法,各种循环嵌套分析
空间复杂度分析 掌握 迭代O(1),递归O(n)

第二部分:线性表

考点 掌握程度 关键内容
顺序表操作 熟练 插入/删除/查找,平均移动次数
单链表操作 熟练 头插法、尾插法、插入/删除
双链表 掌握 前驱后驱指针的修改顺序
循环链表 了解 判空条件
静态链表 了解 游标实现
◆ 链表逆置 掌握 头插法,O(n)
◆ 链表快慢指针 掌握 找中间结点、找环

第三部分:栈、队列和数组

考点 掌握程度 关键内容
栈(LIFO) 熟练 顺序栈、链式栈
队列(FIFO) 熟练 循环队列判空判满
双端队列 掌握 输入/输出受限
栈的应用 掌握 括号匹配、中缀转后缀、函数调用
队列的应用 掌握 层次遍历、BFS、缓冲区
矩阵压缩存储 掌握 对称/三角/三对角/稀疏

第四部分:串

考点 掌握程度 关键内容
BF算法 掌握 暴力匹配,O(nm)
◆ KMP算法 熟练 next数组、nextval数组
KMP匹配过程 掌握 i不回溯,j回退

第五部分:树与二叉树

考点 掌握程度 关键内容
二叉树性质 熟练 n₀=n₂+1,完全二叉树公式
二叉树遍历 熟练 前/中/后序(递归+非递归)、层序
由遍历序列确定树 掌握 前+中、后+中、层+中
线索二叉树 掌握 中序线索化,前驱后继查找
树与森林的转换 掌握 孩子兄弟表示法
◆ 哈夫曼树 熟练 构造过程、WPL计算、哈夫曼编码
并查集 了解 Find、Union、路径压缩

第六部分:图

考点 掌握程度 关键内容
图的存储 掌握 邻接矩阵、邻接表、十字链表
DFS/BFS 熟练 遍历序列、时间复杂度
◆ 最小生成树 掌握 Prim(选点)、Kruskal(选边)
◆ 最短路径 掌握 Dijkstra(单源)、Floyd(多源)
◆ 拓扑排序 熟练 AOV网、入度为0出队
◆ 关键路径 掌握 AOE网、ve/vl/e/l/d

第七部分:查找

考点 掌握程度 关键内容
顺序查找 掌握 哨兵优化
折半查找 熟练 判定树、ASL计算
BST 掌握 查找/插入/删除
◆ AVL调整 熟练 LL/RR/LR/RL旋转
红黑树 了解 5个性质,黑高
◆ B树 掌握 插入分裂、删除合并
◆ 散列表 熟练 构造、冲突处理、ASL计算

第八部分:排序

排序算法 时间复杂度 空间 稳定性
直接插入 O(n²) O(1) 稳定
折半插入 O(n²) O(1) 稳定
希尔 O(n^1.3)~O(n²) O(1) 不稳定
冒泡 O(n²) O(1) 稳定
快速排序 O(n log n) O(log n) 不稳定
简单选择 O(n²) O(1) 不稳定
堆排序 O(n log n) O(1) 不稳定
归并排序 O(n log n) O(n) 稳定
基数排序 O(d(n+r)) O(r) 稳定

综合难度分布

难度等级:★ 了解  ★★ 掌握  ★★★ 熟练(高频考点)

p1 绪论        ★★      基本概念 + 复杂度分析
p2 线性表      ★★★     链表操作(大题高频)
p3 栈队列数组  ★★★     循环队列判空判满
p4 串          ★★★     KMP的next数组计算
p5 树与二叉树  ★★★★    遍历 + 哈夫曼(计算题)
p6 图          ★★★★    最短路 + 拓扑 + 关键路径
p7 查找        ★★★★    AVL + B树 + 散列表ASL
p8 排序        ★★★★★   快排 + 堆排 + 外部排序

命题规律分析

408 数据结构部分的题型分布:

  • 选择题(11道,约22分):覆盖各章概念,重点在复杂度、二叉树性质、图算法性质、排序算法比较。
  • 综合应用题(1-2道,约23分):链表操作题、二叉树遍历题、图算法题、排序过程题。
  • 出题趋势:越来越注重对算法过程的理解(手工模拟能力),而不仅仅是记忆。

复习策略建议

  1. 先理解再记忆:数据结构不是背出来的,是理解出来的。先理解逻辑,再记公式。
  2. 动手画图:链表指针修改、树的旋转、图的遍历——一定要画图帮助理解。
  3. 手算模拟:快排划分、Dijkstra、AVL调整、B树操作——能从头到尾手算一遍才算真正掌握。
  4. 代码与算法并重:看懂 ≠ 会写。408统考不要求写完整代码,但算法思想和关键步骤必须写清楚。
  5. 重点突出:排序、查找、树、图是四大重点章节,占分最多,需要重点投入时间。