第一章 绪论 1
1.1 数据结构的基本概念 1
1.2 抽象数据类型 6
1.3 算法和算法性能分析 7
1.4 小结 11
解题指导与示例 12
习题 13
第二章 数据结构实现基础 15
2.1 函数 16
2.2 数组 24
2.3 指针 29
2.4 结构体 35
2.5 数据类型重命名 40
2.6 内存动态管理函数 42
2.7 小结 43
解题指导与示例 43
习题 48
第三章 线性表 60
3.1 线性表的概念 60
3.2 线性表的顺序存储 62
3.3 线性表的链式存储 69
3.4 栈 88
3.5 队列 106
3.6 本章小结 116
解题指导与示例 116
习题 120
第四章 串和特殊矩阵 123
4.1 串 123
4.2 特殊矩阵的压缩存储 133
4.3 本章小结 139
解题指导与示例 139
习题 141
第五章 树与二叉树 144
5.1 二叉树 144
5.2 树 164
5.3 树、森林与二叉树的转换 174
5.4 哈夫曼树及其应用 176
5.5 小结 182
解题指导与示例 182
习题 188
第六章 图 192
6.1 图的定义及术语 192
6.2 图的存储结构 196
6.3 图的遍历及其应用 212
6.4 最小生成树 215
6.5 最短路径 222
6.6 有向无环图及其应用 225
6.7 小结 231
解题指导与示例 231
习题 235
第七章 查找 238
7.1 查找的概念及基本术语 238
7.2 线性表查找 240
7.3 树表查找 245
7.4 哈希表查找 254
7.5 小结 259
解题指导与示例 260
习题 262
第八章 排序 264
8.1 排序的基本概念 264
8.2 插入类排序 266
8.3 交换类排序 270
8.4 选择类排序 274
8.5 归并排序 280
8.6 基数排序 282
8.7 各种排序方法的综合比较 283
8.8 小结 284
解题指导与示例 285
习题 287
参考文献 290