目录 1
第1章 绪论 1
1.1 基本概念 1
1.2 算法描述 8
1.3 算法评价 9
习题一 15
第2章 线性表 18
2.1 线性表的定义和操作 18
2.2 线性表的顺序存储结构和操作实现 20
2.2.1 线性表的顺序存储 20
2.2.2 顺序存储下线性表的操作实现 21
2.3 线性表的链接存储结构 31
2.3.1 链接存储的概念 31
2.3.2 线性表的链接存储 32
2.3.3 在单链表上的插入和删除操作 33
2.3.4 单链表中的结点类型 34
2.3.5 双向链表中的结点类型和插入与删除操作 37
2.3.6 带表头附加结点的线性链表 39
2.3.7 循环链表 39
2.4 线性表操作在单链表上的实现 40
习题二 51
第3章 稀疏矩阵和广义表 54
3.1 稀疏矩阵 54
3.1.1 稀疏矩阵的定义 54
3.1.2 稀疏矩阵的存储结构 56
3.1.3 稀疏矩阵的运算 58
3.2 广义表 66
3.2.1 广义表的定义 66
3.2.2 广义表的存储结构 68
3.2.3 广义表的运算 69
3.2.4 简单程序举例 73
习题三 74
4.1.2 栈的运算概述 76
4.1.1 栈的定义 76
4.1 栈 76
第4章 栈和队列 76
4.2 栈的顺序存储结构和操作实现 77
4.3 栈的链接存储结构和操作实现 81
4.4 栈的简单应用举例 84
4.5 算术表达式的计算 88
4.5.1 算术表达式的两种表示 88
4.5.2 后缀表达式求值的算法 89
4.5.3 把中缀表达式转换为后缀表达式的算法 92
4.6 栈与递归 95
4.7 队列 103
4.7.1 队列的定义 103
4.7.2 队列的运算概述 103
4.7.3 队列的顺序存储结构和操作实现 104
4.7.4 队列的链接存储结构和操作实现 109
4.7.5 队列的应用简介 111
习题四 112
第5章 树和二叉树 116
5.1 树的概念 116
5.1.1 树的定义 116
5.1.2 树的表示 117
5.1.3 树的基本术语 118
5.1.4 树的性质 119
5.2 二叉树 120
5.2.1 二叉树的定义 120
5.2.2 二叉树的性质 121
5.2.3 二叉树的运算概述 122
5.2.4 二叉树的存储结构 123
5.3 二叉树遍历 126
5.4 二叉树的其他运算 130
5.5 树的存储结构和运算 136
5.5.1 树的运算概述 136
5.5.2 树的存储结构 136
5.5.3 树的运算 139
习题五 145
第6章 二叉树的应用 151
6.1 二叉搜索树 151
6.1.1 二叉搜索树的定义 151
6.1.2 二叉搜索树的运算概述 151
6.1.3 二叉搜索树的运算 152
6.2.1 堆的定义 160
6.2.2 堆的运算概述 160
6.2 堆 160
6.2.3 堆的存储结构 161
6.2.4 堆的运算 162
6.3 哈夫曼树 167
6.3.1 基本术语 167
6.3.2 构造哈夫曼树 168
*6.3.3 哈夫曼编码 170
习题六 174
7.1.1 图的定义 176
第7章 图 176
7.1 图的概念 176
7.1.2 图的基本术语 177
7.2 图的存储结构 180
7.2.1 邻接矩阵 180
7.2.2 邻接表 182
7.2.3 边集数组 185
7.3 图的遍历 186
7.3.1 深度优先搜索遍历 186
7.3.2 广度优先搜索遍历 189
7.3.3 非连通图的遍历 191
7.4 图的生成树和最小生成树 194
7.4.1 普里姆算法 196
7.4.2 克鲁斯卡尔算法 199
7.5 拓扑排序 204
习题七 211
8.1 查找的基本概念 213
第8章 查找 213
8.2 顺序表查找 214
8.2.1 顺序查找 214
8.2.2 二分查找 215
8.3 索引查找 219
8.3.1 索引的概念 219
8.3.2 索引查找算法 222
8.3.3 分块查找 224
8.4 散列查找 225
8.4.1 散列的概念 225
8.4.2 散列函数 227
8.4.3 处理冲突的方法 229
8.4.4 散列表的运算 232
8.5 B树查找 240
8.5.1 B_树的定义 240
8.5.2 B_树查找 241
8.5.3 B树的插入 243
8.5.4 B树的删除 245
习题八 247
第9章 排序 249
9.1 排序的基本概念 249
9.2 插入排序 250
9.3 选择排序 252
9.3.1 直接选择排序 252
9.3.2 堆排序 253
9.4 交换排序 257
9.4.1 气泡排序 257
9.4.2 快速排序 258
9.5 归并排序 262
9.6 各种内排序方法的比较 265
9.7 外排序 266
习题九 274
参考文献 276