第1章 绪论 1
1.1 数据结构的基本概念 1
1.2 算法和算法分析 3
1.3 算法描述语言与C语言数据类型 6
本章小结 14
习题 15
第2章 线性表 17
2.1 线性表的基本概念 17
2.2 线性表的顺序存储结构及其运算 18
2.3 线性表的链式存储结构及其运算 22
2.4 顺序表和链表的比较 29
2.5 线性表的应用 30
本章小结 32
习题 32
本章实验 34
第3章 栈和队列 41
3.1 栈 41
3.2 队列 46
3.3 应用 51
本章小结 58
习题 59
本章实验 60
第4章 串、数组和广义表 63
4.1 串 63
4.2 数组 68
4.3 广义表 79
本章小结 81
习题 81
本章实验 82
第5章 树和二叉树 87
5.1 树 87
5.2 二叉树 90
5.3 二叉树的遍历 98
5.4 线索二叉树 103
5.5 树、森林与二叉树的转换 108
5.6 哈夫曼树 110
本章小结 112
习题 112
本章实验 114
第6章 图 124
6.1 图的基本概念 124
6.2 图的存储结构 127
6.3 图的遍历 131
6.4 图的连通性 134
6.5 最短路径 136
6.6 AOV网与拓扑排序 141
6.7 AOE网与关键路径 142
本章小结 144
习题 144
本章实验 147
第7章 查找 156
7.1 基本概念 156
7.2 静态查找 157
7.3 动态查找表 161
7.4 哈希法查找 167
本章小结 170
习题 171
本章实验 172
第8章 排序 179
8.1 排序基本概念 179
8.2 插入类排序 180
8.3 交换类排序 184
8.4 选择类排序 189
8.5 归并排序 193
8.6 基数排序 194
8.7 各类排序方法的比较 196
8.8 外部排序 196
本章小结 197
习题 197
本章实验 198