第1章 绪论 1
1.1 考点精要 1
1.1.1 什么是数据结构 1
1.1.2 算法和算法分析 2
1.2 例题解析 3
1.3 自测题及参考答案 6
第2章 线性表 10
2.1 考点精要 10
2.1.1 线性表的概念 10
2.1.2 线性表的顺序存储结构 11
2.1.3 线性表的链式存储结构 13
2.2 例题解析 17
2.3 自测题及参考答案 25
第3章 栈和队列 44
3.1 考点精要 44
3.1.1 栈 44
3.1.2 队列 48
3.1.3 利用栈实现递归算法到非递归算法的转换 52
3.2 例题解析 54
3.3 自测题及参考答案 63
4.1.2 顺序串 74
4.1.1 串的基本概念 74
4.1 考点精要 74
第4章 串 74
4.1.3 链串 77
4.1.4 串的模式匹配 80
4.2 例题解析 81
4.3 自测题及参考答案 84
第5章 数组和广义表 90
5.1 考点精要 90
5.1.1 数组 90
5.1.2 特殊矩阵的压缩存储 91
5.1.3 稀疏矩阵 92
5.1.4 广义表 96
5.2 例题解析 100
5.3 自测题及参考答案 107
第6章 树和二叉树 116
6.1 考点精要 116
6.1.1 树的基本概念 116
6.1.2 二叉树的概念和性质 118
6.1.3 二叉树的存储结构 120
6.1.4 二叉树的基本运算及其实现 121
6.1.5 二叉树的遍历 124
6.1.6 线索二叉树 125
6.1.7 哈夫曼树 126
6.2 例题解析 127
6.3 自测题及参考答案 134
7.1 考点精要 160
7.1.1 图的基本概念 160
第7章 图 160
7.1.2 图的遍历 162
7.1.3 生成树和最小生成树 164
7.1.4 最短路径 165
7.1.5 拓扑排序 166
7.1.6 AOE网与关键路径 166
7.2 例题解析 167
7.3 自测题及参考答案 174
8.1.1 线性表的查找 188
第8章 查找 188
8.1 考点精要 188
8.1.2 树表的查找 190
8.1.3 哈希表查找 193
8.2 例题解析 195
8.3 自测题及参考答案 200
第9章 内排序 214
9.1 考点精要 214
9.1.1 排序的概念 214
9.1.2 插入排序 214
9.1.3 交换排序 215
9.1.4 选择排序 217
9.1.5 归并排序 219
9.1.6 基数排序 220
9.2 例题解析 222
9.3 自测题及参考答案 228
第10章 外排序 239
10.1 考点精要 239
10.1.1 外排序概述 239
10.1.2 磁盘排序 239
10.1.3 磁带排序方法 241
10.2 例题解析 241
10.3 自测题及参考答案 243
11.1.1 文件的基本概念 246
11.1.2 顺序文件 246
第11章 文件 246
11.1 考点精要 246
11.1.3 索引文件 247
11.1.4 索引顺序文件 247
11.1.5 散列文件 248
11.1.6 多关键字文件 248
11.2 例题解析 248
11.3 自测题及参考答案 252
附录 本书程序使用的C++语法说明 254
参考文献 255