《数据结构》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:周娅主编
  • 出 版 社:重庆:重庆大学出版社
  • 出版年份:2003
  • ISBN:7562423393
  • 页数:269 页
图书介绍:

1.1 什么是数据结构 1

第1章 绪论 1

1.2 数据的逻辑结构和存储结构 4

1.2.1 数据的逻辑结构 4

1.2.2 数据的存储结构 5

1.3 存储结构的表示与实现 6

1.3.1 数据类型 6

1.3.2 抽象数据类型 6

1.3.3 抽象数据类型的表示与实现 7

1.4 问题、算法和程序 8

1.5.1 算法的描述 9

1.5 算法的描述与分析 9

1.5.2 算法分析 14

学习指导 15

习题 16

第2章 线性表 18

2.1 线性表的逻辑特点 18

2.2 线性表的顺序存储结构——顺序表 19

2.2.1 顺序表的类型定义 19

2.2.2 基本操作的实现 20

2.2.3 典型应用——多项式求值 23

2.3.1 单链表的类型定义 24

11.2 实验二栈和队列及其应用 24

2.3 线性表的链式存储结构——链表 24

2.3.2 基本运算的实现 25

2.3.3 循环链表与双向链表 29

2.3.4 典型应用——多项式相加 33

2.4 链表的数组描述与实现 36

学习指导 38

习题 39

第3章 栈和队列 40

3.1 栈的逻辑特点 40

3.2 栈的顺序存储结构——顺序栈 41

3.2.1 顺序栈的类型定义 41

3.2.2 基本运算的实现 42

3.2.3 多栈共享空间 44

3.2.4 典型应用举例 46

3.3.1 链栈的类型定义 54

3.3.2 基本运算的实现 54

3.3 栈的链式存储结构——链栈 54

3.3.3 典型应用举例 57

3.4 队列的逻辑特点 58

3.5 队列的链式存储结构——链队列 58

3.5.1 链队列的类型定义 58

3.5.2 基本运算的实现 59

3.6 队列的顺序存储结构——循环队列 61

3.6.1 循环队列的类型定义 62

3.6.2 基本运算的实现 63

3.6.3 典型应用举例 65

学习指导 68

习题 69

第4章 数组和串 70

4.1 数组的逻辑特点 70

4.2 数组的顺序存储结构 71

4.3 特殊矩阵的压缩存储 73

4.4 稀疏矩阵运算的实现 75

4.4.1 矩阵转置 75

4.4.2 矩阵相乘 77

4.5 串 80

4.5.1 串的存储表示与操作实现 80

4.5.2 串的模式匹配算法 83

学习指导 87

习题 88

第5章 递归 90

5.1 递归模型与递归算法 90

5.2 递归过程与递归工作栈 93

5.3 递归程序的阅读方法 98

5.4 递归问题的非递归算法 99

5.5 广义表 102

5.5.1 广义表的递归定义 102

5.5.2 广义表的存储结构 103

5.5.3 广义表的递归算法 106

5.5.4 典型应用——m元多项式的表示 109

学习指导 111

习题 111

第6章 树和二叉树 113

6.1 树的逻辑结构 113

6.1.1 树的递归定义 113

6.1.2 树的基本术语 114

6.1.3 树的表示 115

6.2.1 二叉树的递归定义 117

6.2.2 二叉树的性质 117

6.2 二叉树 117

6.2.3 二叉树的存储结构 120

6.3 二叉树遍历 123

6.3.1 二叉树遍历的定义 123

6.3.2 前序遍历算法描述 124

6.3.3 中序遍历算法描述 126

6.3.4 后序遍历算法描述 128

6.3.5 遍历算法的应用 131

6.4 线索化二叉树 135

6.4.1 二叉树的线索化 136

6.4.2 线索二叉树的遍历 138

6.5 树和森林 140

6.5.1 树的存储结构 140

6.5.2树、森林与二叉树的转换 144

6.5.3树和森林的遍历 146

6.6.1 基本术语 147

6.6 哈夫曼树及其应用 147

6.6.2 构造哈夫曼树 148

6.6.3 哈夫曼树的应用 150

学习指导 152

习题 153

第7章 图 156

7.1 图的定义和术语 156

7.2 图的存储结构 158

7.2.1 邻接矩阵 158

7.2.2 邻接表 159

7.2.3 十字链表 160

7.2.4 邻接多重表 161

7.3 图的遍历 162

7.3.1 深度优先搜索 162

7.3.2 广度优先搜索 165

7.4 图的应用 166

7.4.1 图的连通性 166

7.4.2 最小生成树 166

7.4.3 拓扑排序 171

7.4.4 最短路径 173

学习指导 177

习题 179

8.1 查找的基本概念 181

第8章 查找 181

8.2 顺序表查找 182

8.2.1 顺序查找 182

8.2.2 折半查找 183

8.3 索引表查找 185

8.3.1 索引查找 185

8.3.2 分块查找 185

8.4 树表查找 186

8.4.1 二叉排序树 186

8.4.2 平衡二叉树 189

8.4.3 B-树 192

8.5.1 哈希表与哈希函数 196

8.5 哈希表查找 196

8.5.2 处理冲突的办法 197

8.5.3 哈希表的查找 199

学习指导 201

习题 202

第9章 排序 204

9.1 排序的基本概念 204

9.2 插入排序 205

9.2.1 直接插入排序 205

9.2.2 折半插入排序 206

9.2.3 希尔(shell)排序 207

9.3.1 冒泡排序 209

9.3 交换排序 209

9.3.2 快速排序 210

9.4 选择排序 212

9.4.1 简单选择排序 212

9.4.2 堆排序 213

9.5 归并排序 216

9.5.1 两个有序文件的归并 216

9.5.2 归并排序 217

9.6 基数排序 219

9.7 各种排序方法的比较 219

学习指导 221

习题 222

第10章 文件 223

10.1 外部存储设备 223

10.1.1 磁带 223

10.1.2 磁盘 224

10.2 文件的基本概念 225

10.2.1 文件的定义及其分类 225

10.2.2 文件的逻辑结构及物理结构 226

10.3 顺序文件 228

10.4 索引文件 230

10.5 索引顺序文件 232

10.6 散列文件 236

10.7.1 多重链表文件 237

10.7 多关键字文件 237

10.7.2 倒排文件 238

10.8 典型应用举例 239

10.8.1 顺序文件的批量处理实例 239

10.8.2 文件的随机访问实例 241

学习指导 244

习题 244

第11章 《数据结构》实验指导 245

11.1 实验一线性表及其应用 247

11.1.1 课程成绩管理 247

11.1.2 一元稀疏多项式简单计数器 247

11.2.1 停车场管理 249

11.2.2 车厢调度 251

11.2.3 汽车加油 251

11.3 实验三串及其应用——简单行编辑程序 252

11.4 实验四树及其应用 254

11.4.1 二叉树的中序遍历及线索化 254

11.4.2 重言式判别 254

11.5 实验五图及其应用——跳马将军 255

附录 257

源程序1 257

源程序2 263

参考文献 269