《数据结构 C语言描述》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:王志雄,田小梅主编;曾志峰,刘本军,杨海英,连智峰,葛蓉,方全文副主编
  • 出 版 社:北京:北京工业大学出版社
  • 出版年份:2006
  • ISBN:7563916946
  • 页数:244 页
图书介绍:本书是计算机学科的核心课程之一,是重要的专业基础课。本书的编写以“理论够用,注重实用”为原则,充分考虑我国高等职业教育的培养目标和教学现状,力求体现高职高专的教学特点。其主要内容包括:线性表、栈、队列、串、数组、树、二叉树、图、文件等数据结构及常用的排序和查找算法。全书采用C语言作为数据结构和算法的描述语言,为便于教学,每章都有实例和习题。本书可作为高职高专及本科院校所属的二级职业技术学院计算机类专业或信息类专业的教材,也可作为非计算机专业学生选修课或辅修课的教材,还可作为计算机应用人员和工程技术人员的参考书。

第1章 绪论 1

1.1 数据结构的概念和术语 2

1.2 算法和算法分析 6

1.2.1 算法的描述 7

1.2.2 算法设计的要求 9

1.2.3 算法效率 10

1.2.4 算法的空间需求 12

1.3 小结 13

2.1 线性表的逻辑结构 16

第2章 线性表 16

2.2 线性表的顺序存储结构 17

2.3 线性表的链式存储结构 21

2.3.1 线性链表 21

2.3.2 循环链表 32

2.3.3 双向链表 34

2.4 小结 36

3.1.1 栈的概念 41

第3章 栈和队列 41

3.1 栈 41

3.1.2 栈的表示和实现 42

3.1.3 栈的应用举例 46

3.2 队列 55

3.2.1 队列的概念 55

3.2.2 队列的顺序存储表示 56

3.2.3 队列的链式存储表示 59

3.3 栈和队列的应用实例——停车场管理 61

3.4 小结 65

第4章 串 70

4.1 串的概念 70

4.2 串的存储结构 71

4.2.1 串的静态存储结构 71

4.2.2 串的动态存储结构 75

4.2.3 串的基本运算 77

4.3 串操作应用举例 80

4.3.1 模式匹配 81

4.3.2 串在文本编辑中的应用 87

4.4 小结 88

第5章 数组 90

5.1 数组的概念 90

5.2 数组的顺序存储结构 91

5.3 矩阵的压缩存储 92

5.3.1 特殊矩阵 92

5.3.2 稀疏矩阵 94

5.4 小结 106

第6章 树和二叉树 108

6.1 基本术语 108

6.1.1 树的定义 108

6.1.2 与树有关的基本术语 110

6.1.3 树的表示方法 111

6.2.1 二叉树的概念和基本操作 112

6.2 二叉树 112

6.1.4 树的基本操作 112

6.2.2 二叉树的性质 114

6.2.3 二叉树的存储结构 116

6.3 遍历二叉树和线索二叉树 119

6.3.1 遍历二叉树 119

6.3.2 线索二叉树 125

6.4 树和森林 129

6.4.1 树的存储结构 129

6.4.2 森林转换成二叉树 133

6.5 哈夫曼树及其应用 135

6.5.1 哈夫曼树 135

6.5.2 哈夫曼编码 138

6.6 小结 139

第7章 图 142

7.1 图的概念 142

7.1.1 图的定义 142

7.1.2 图的基本术语 143

7.2 图的存储结构 147

7.2.1 数组表示法 147

7.2.2 邻接表 149

7.2.3 十字链表 151

7.2.4 邻接多重表 152

7.3 图的遍历 153

7.3.1 深度优先搜索 153

7.3.2 广度优先搜索 155

7.4 图的连通性问题 157

7.4.1 图的连通分量 157

7.4.2 最小生成树 158

7.5 有向无环图及其应用 160

7.5.1 拓扑排序 161

7.5.2 关键路径 163

7.6 最短路径 165

7.6.1 从某个源点到其余各顶点的最短路径 166

7.6.2 每一对顶点之间的最短路径 167

7.7 小结 168

第8章 查找 172

8.1 顺序表的查找 172

8.2 有序表的查找 174

8.2.1 二分查找 174

8.2.2 分块查找 179

8.3 二叉排序树的查找 181

8.4 哈希表的查找 188

8.4.1 哈希函数 189

8.4.2 哈希函数的构造方法 189

8.4.3 哈希冲突的解决方法 192

8.4.4 哈希表的查找 194

8.5 小结 195

第9章 排序 197

9.1 概述 197

9.2.1 直接插入排序 198

9.2 插入排序 198

9.2.2 其他插入排序 200

9.2.3 希尔排序 201

9.3 选择排序 202

9.3.1 简单选择排序 202

9.3.2 堆排序 204

9.4 交换排序 207

9.4.1 冒泡排序 207

9.4.2 快速排序 209

9.5 归并排序 211

9.6 基数排序 214

9.7 各种内排序法的比较 218

9.8 外部排序 219

9.9 小结 220

第10章 文件 222

10.1 文件的基本概念 222

10.2.2 顺序文件的操作特点 224

10.2 顺序文件 224

10.2.1 顺序文件的结构特点 224

10.2.3 顺序文件的处理时间 227

10.3 索引文件 228

10.3.1 索引文件的结构特点 228

10.3.2 索引文件的操作特点 229

10.3.3 静态索引和动态索引 230

10.3.4 索引顺序文件 233

10.4 直接存取文件 239

10.4.1 直接存取文件的结构特点 239

10.4.2 直接存取文件的操作特点 240

10.4.3 散列文件的优缺点 240

10.5 多关键字文件 240

10.5.1 多关键字文件的特点 240

10.5.2 次索引的组织方法 241

10.5.3 次关键索引表本身的结构 242

10.6 小结 242