《数据结构》PDF下载

  • 购买积分:11 如何计算积分?
  • 作  者:陈广山,郭群,冯素梅主编
  • 出 版 社:北京:国防工业出版社
  • 出版年份:2009
  • ISBN:9787118060294
  • 页数:286 页
图书介绍:本书是计算机与信息技术类专业的一门专业基础课,是从事计算机与信息技术工作人员的必修课程之一。本书涵盖了教育部对“数据结构”教学规定的全部内容和全国硕士研究生入学考试“数据结构”大纲中规定的知识点,并融入了编者多年教学经验的总结和对信息技术行业背景知识的进一步思考。全书共分11章,内容涉及数据结构的基本概念、线性表、栈和队列、串、数组与广义表、树、图、查找、排序以及文件等。

第1章 绪论 1

1.1 数据结构的概念 1

1.1.1 计算机解决问题的步骤 1

1.1.2 基本概念和术语 4

1.1.3 研究数据结构的意义 6

1.2 抽象数据类型的表示 7

1.2.1 数据类型 7

1.2.2 抽象数据类型 7

1.2.3 抽象数据类型的表示 8

1.3 算法和算法分析 10

1.3.1 算法特性 10

1.3.2 算法描述 11

1.3.3 算法性能分析与度量 11

1.4 本章小结 13

习题 14

第2章 线性表 17

2.1 线性表的定义及其基本操作 17

2.1.1 线性表的定义 17

2.1.2 线性表的基本操作 17

2.2 线性表的顺序表示与实现 19

2.2.1 顺序表 19

2.2.2 顺序表基本运算的实现 20

2.3 线性表的链式表示与实现 24

2.3.1 单链表 24

2.3.2 单链表的基本运算 25

2.4 双向链表 28

2.4.1 双向链表的存储结构 28

2.4.2 双向链表的基本运算 29

2.5 循环链表 30

2.6 静态链表 31

2.7 线性表的应用 33

2.8 顺序表和链表的比较 36

2.9 本章小结 36

习题 37

第3章 栈和队列 41

3.1 栈 41

3.1.1 栈的抽象数据类型的定义 41

3.1.2 栈的表示与实现 42

3.2 队列 46

3.2.1 队列的抽象数据类型的定义 46

3.2.2 队列的表示与实现 47

3.3 栈和队列的应用 53

3.3.1 栈的应用 53

3.3.2 队列的应用 62

3.4 本章小结 65

习题 65

第4章 数组和广义表 67

4.1 数组的概念 67

4.2 数组的存储结构 68

4.2.1 数组的内存映像 68

4.2.2 数组的顺序存储表示与实现 69

4.3 矩阵的压缩存储 71

4.3.1 特殊矩阵 72

4.3.2 稀疏矩阵 74

4.4 广义表的概念 84

4.5 广义表的存储结构 86

4.6 数组和广义表的应用 90

4.6.1 数组的应用 90

4.6.2 广义表的应用 93

4.7 本章小结 95

习题 95

第5章 串 98

5.1 串的基本概念 98

5.2 串的表示与实现 100

5.2.1 串的顺序存储表示与实现 100

5.2.2 串的链式存储表示与实现 105

5.3 模式匹配 107

5.3.1 简单的模式匹配算法 107

5.3.2 KMP算法 109

5.4 串的应用 114

5.4.1 文本编辑 114

5.4.2 文本加密 116

5.4.3 文本替换 118

5.5 本章小结 118

习题 119

第6章 树和二叉树 121

6.1 树 121

6.1.1 树的基本概念 121

6.1.2 树的表示 124

6.2 二叉树 125

6.2.1 二叉树的概念 125

6.2.2 二叉树的性质 127

6.2.3 二叉树的存储结构 128

6.3 二叉树的遍历 131

6.3.1 二叉树的遍历方法及递归实现 131

6.3.2 二叉树遍历的非递归实现 133

6.3.3 二叉树的应用 136

6.3.4 二叉树遍历的应用 137

6.4 线索二叉树 140

6.4.1 线索二叉树的定义及结构 140

6.4.2 线索二叉树的基本操作实现 142

6.5 树和森林 145

6.5.1 树的存储结构 145

6.5.2 树、森林与二叉树的关系 147

6.5.3 树和森林的遍历 149

6.6 哈夫曼树及其应用 150

6.6.1 哈夫曼树 150

6.6.2 哈夫曼树编码 153

6.6.3 哈夫曼树的应用 155

6.7 树的应用 157

6.7.1 集合的表示 157

6.7.2 关系等价求等价类问题 159

6.8 本章小结 160

习题 161

第7章 图 164

7.1 图的基本概念 164

7.1.1 图的定义 164

7.1.2 图的基本术语 165

7.2 图的存储结构 168

7.2.1 邻接矩阵 168

7.2.2 邻接表 170

7.2.3 十字链表 172

7.2.4 邻接多重表 174

7.3 图的遍历 176

7.3.1 深度优先遍历 176

7.3.2 广度优先遍历 178

7.4 最小生成树 179

7.4.1 最小生成树的概念 179

7.4.2 构造最小生成树的Prim算法 179

7.4.3 构造最小生成树的Kruskal算法 182

7.5 最短路径 184

7.5.1 从一个源点到其他各顶点的最短路径 184

7.5.2 每一对顶点之间的最短路径 187

7.6 有向无环图及其应用 189

7.6.1 有向无环图的概念 189

7.6.2 拓扑排序 189

7.6.3 关键路径 194

7.7 图的应用 198

7.7.1 图在路由器寻径中的应用 199

7.7.2 图在物流信息系统中的应用 199

7.8 本章小结 200

习题 200

第8章 查找 204

8.1 查找的基本概念 204

8.2 静态查找表 206

8.2.1 顺序表的查找 206

8.2.2 有序表的查找 208

8.2.3 索引表的查找 211

8.3 动态查找表 211

8.3.1 二叉排序树和平衡二叉树 212

8.3.2 B-树和B+树 224

8.4 哈希表 230

8.4.1 什么是哈希表 230

8.4.2 哈希函数的构造方法 232

8.4.3 冲突的解决方法 234

8.4.4 哈希表的查找 236

8.5 查找的应用 238

8.5.1 在ARM Linux中的应用 238

8.5.2 病毒特征代码串的搜索 239

8.6 本章小结 241

习题 241

第9章 排序 245

9.1 排序的基本概念 245

9.2 内部排序 246

9.2.1 插入排序 246

9.2.2 快速排序 252

9.2.3 选择排序 256

9.2.4 归并排序 260

9.2.5 基数排序 262

9.2.6 各种内部排序方法的比较和选择 265

9.3 外部排序 266

9.3.1 外部排序的方法 267

9.3.2 多路平衡归并的实现 268

9.4 本章小结 270

习题 271

第10章 文件 273

10.1 文件的基本概念 273

10.2 文件组织 274

10.3 本章小结 280

习题 280

附录A 习题参考答案(部分) 282

附录B 2009年全国计算机专业硕士研究生入学考试大纲(数据结构) 284

参考文献 286