序
前言
历年真题分值、考点统计表 1
历年真题考点索引表 3
第1章 绪论 1
本章概略 1
1.1 针对考研数据结构的代码书写规范以及C&C++语言基础 1
1.1.1 考研综合应用题中算法设计部分的代码书写规范 1
1.1.2 考研中的C&C++语言基础杂谈 4
1.2 算法的时间复杂度与空间复杂度分析基础 12
1.2.1 考研中的算法时间复杂度杂谈 12
1.2.2 例题选讲 13
1.2.3 考研中的算法空间复杂度分析 14
1.3 数据结构和算法的基本概念 15
1.3.1 数据结构的基本概念 15
1.3.2 算法的基本概念 16
习题 17
习题答案 19
第2章 线性表 22
大纲要求 22
考点与要点分析 22
核心考点 22
基础要点 22
本章知识体系框架图 22
知识点讲解 23
2.1 线性表的基本概念与实现 23
2.2 线性表的基本操作 27
2.2.1 线性表的定义 27
2.2.2 线性表的结构定义 28
2.2.3 顺序表的算法操作 28
2.2.4 单链表的算法操作 32
2.2.5 双链表的算法操作 37
2.2.6 循环链表的算法操作 39
▲真题仿造 39
真题仿造答案与讲解 39
习题+历年真题 41
习题答案+历年真题答案 46
第3章 栈、队列和数组 59
大纲要求 59
考点与要点分析 59
核心考点 59
基础要点 59
本章知识体系框架图 59
知识点讲解 60
3.1 栈和队列的基本概念 60
3.1.1 栈的基本概念 60
3.1.2 队列的基本概念 60
3.2 栈和队列的存储结构、算法与应用 60
3.2.1 本章所涉及的数据结构定义 61
3.2.2 顺序栈的基本算法操作 62
3.2.3 链栈的基本算法操作 64
3.2.4 栈的应用 65
3.2.5 顺序队的算法操作 69
3.2.6 链队的算法操作 71
3.3 特殊矩阵的压缩存储 73
▲真题仿造 76
真题仿造答案与讲解 77
习题+真题 80
习题答案+历年真题答案 85
第4章 树与二叉树 98
大纲要求 98
考点与要点分析 98
核心考点 98
基础要点 98
本章知识体系框架图 98
知识点讲解 99
4.1 树的基本概念 99
4.1.1 树的定义 99
4.1.2 树的基本术语 99
4.1.3 树的存储结构 100
4.2 二叉树 100
4.2.1 二叉树的定义 100
4.2.2 二叉树的主要性质 101
4.2.3 二叉树的存储结构 103
4.2.4 二叉树的遍历算法 104
4.2.5 线索二叉树的基本概念和构造 113
4.3 树和森林 116
4.3.1 孩子兄弟存储结构 116
4.3.2 森林与二叉树的转换 117
4.3.3 树和森林的遍历 117
4.4 树与二叉树的应用 118
4.4.1 二叉排序树与平衡二叉树 118
4.4.2 哈弗曼树和哈弗曼编码 118
▲真题仿造 121
真题仿造答案与解析 121
习题+历年真题 123
习题答案+历年真题答案 129
第5章 图 146
大纲要求 146
考点与要点分析 146
核心考点 146
基础要点 146
本章知识体系框架图 146
知识点讲解 147
5.1 图的基本概念 147
5.2 图的存储结构 148
5.2.1 邻接矩阵 148
5.2.2 邻接表 150
5.3 图的遍历算法操作 151
5.3.1 深度优先搜索遍历 151
5.3.2 广度优先搜索遍历 152
5.3.3 例题选讲 154
5.4 *小(代价)生成树 156
5.4.1 普里姆算法和克鲁斯卡尔算法 156
5.4.2 例题选讲 161
5.5 *短路径 162
5.5.1 迪杰斯特拉算法 162
5.5.2 弗洛伊德算法 168
5.6 拓扑排序 171
5.6.1 AOV网 171
5.6.2 拓扑排序 171
5.6.3 例题选讲 173
5.7 关键路径 174
5.7.1 AOE网 174
5.7.2 关键路径 174
▲真题仿造 178
真题仿造答案解析 178
习题+历年真题 180
习题答案+历年真题答案 186
第6章 排 序 200
大纲要求 200
考点与要点分析 200
核心考点 200
基础要点 200
本章知识体系框架图 200
知识点讲解 201
6.1 排序的基本概念 201
6.1.1 排序 201
6.1.2 稳定性 201
6.1.3 排序算法的分类 202
6.2 插入类排序 202
6.2.1 直接插入排序 202
6.2.2 折半插入排序 204
6.2.3 希尔排序 205
6.3 交换类排序 206
6.3.1 起泡排序 206
6.3.2 快速排序 208
6.4 选择类排序 210
6.4.1 简单选择排序 210
6.4.2 堆排序 211
6.5 二路归并排序 214
6.6 基数排序 215
6.7 外部排序 219
6.7.1 基本概念 219
6.7.2 归并排序法 219
6.7.3 败者树 222
▲真题仿造 224
真题仿造答案与解析 224
习题+历年真题 225
习题答案+真题答案 231
第7章 查 找 241
大纲要求 241
考点与要点分析 241
核心考点 241
基础要点 241
本章知识体系框架图 241
知识点讲解 242
7.1 查找的基本概念、顺序查找法、折半查找法 242
7.1.1 查找的基本概念 242
7.1.2 顺序查找法 243
7.1.3 折半查找法 244
7.2 二叉排序树、平衡二叉树 246
7.2.1 二叉排序树 246
7.2.2 平衡二叉树 249
7.3 B-树及其基本操作、B+树的基本概念 252
7.3.1 B-树的基本概念 252
7.3.2 B-树的基本操作 254
7.3.3 B+树的基本概念 258
7.4 散列表 259
7.4.1 散列表的概念 259
7.4.2 散列表的建立方法以及冲突解决方法 259
7.4.3 散列表的性能分析 263
▲真题仿造 265
真题仿造答案与解析 265
习题+历年真题 266
习题答案+历年真题答案 271
※特别章考研中某些算法的分治法解释 285
参考文献 289