目录 1
序言 1
前言 1
第1章 数据结构概论 1
1.1 什么是数据结构 1
1.2 数据结构的内容 2
1.3 关于抽象数据类型ADT 3
1.4 算法和算法分析 5
1.5 数据结构课程的地位 8
1.6 预备知识 9
1.7 结构化与设计风格 15
习题 16
第2章 线性表 17
2.1 线性表的逻辑定义 17
2.2 线性表的顺序结构 18
2.3 线性表的链式结构 21
2.4 线性表应用 36
习题 41
第3章 栈与队列 43
3.1 栈结构 43
3.2 栈的应用 49
3.3 队列 66
习题 72
第4章 数组和广义表 74
4.1 数组的定义 74
4.2 数组的表示与实现 75
4.3 矩阵的压缩存储 79
4.4 广义表 84
习题 87
第5章 串 89
5.1 串的定义 89
5.2 串的存储与实现 90
5.3 字符串的高级处理 100
5.4 串的应用 104
习题 106
6.1 树的概念与基本术语 108
第6章 树与二叉树 108
6.2 二叉树的定义与性质 109
6.3 二叉树的遍历 115
6.4 线索二叉树 127
6.5 树、森林与二叉树的转换 130
6.6 哈夫曼树及应用 135
习题 141
7.1 基本概念与术语 143
第7章 图 143
7.2 图的存储结构 144
7.3 图的遍历 150
7.4 最小生成树 155
7.5 有向无环图的应用 161
7.6 最短路径 169
习题 174
第8章 查找 176
8.1 查找的基本概念 176
8.2 基于线性表的查找方法 177
8.3 树表查找法 181
8.4 哈希查找 196
习题 204
第9章 内部排序 206
9.1 排序的基本概念 206
9.2 插入排序 208
9.3 交换类排序法 213
9.4 选择类排序法 218
9.5 归并排序 225
9.6 基数排序 230
9.7 各种内部排序算法的比较 234
习题 236
实验一 线性表及应用 237
实验二 栈结构及其应用 240
实验三 字符串操作 243
实验四 二叉树及应用 245
实验五 图的操作及应用 250
实验六 内部排序算法与实现 253
实验七 排序与查找 254
参考文献 255