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

  • 购买积分:10 如何计算积分?
  • 作  者:张瑞军主编
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2009
  • ISBN:9787302194446
  • 页数:222 页
图书介绍:本书分10章,介绍了数据结构及其C语言算法。

第1章 绪论 1

1.1 什么是数据结构 1

1.2 基本概念与术语 3

1.2.1 数据的逻辑结构 4

1.2.2 数据的存储结构 5

1.3 算法 5

1.3.1 算法的特征 5

1.3.2 算法设计的要求 6

1.3.3 时间复杂度 7

1.3.4 空间复杂度 9

1.4 习题 10

第2章 线性表 12

2.1 线性表的概念及基本操作 12

2.1.1 线性表的概念 12

2.1.2 线性表的基本操作 13

2.2 线性表的顺序存储 14

2.2.1 线性表的顺序存储结构 14

2.2.2 线性表的顺序存储结构上的运算 15

2.3 线性表的链式存储 19

2.3.1 单链表 19

2.3.2 单链表上的基本运算 21

2.3.3 循环链表 27

2.3.4 双向链表 30

2.3.5 顺序表与链表的比较 33

2.4 数组与矩阵 34

2.4.1 数组的顺序存储及实现 34

2.4.2 特殊矩阵的压缩存储 36

2.5 线性表的应用实例 42

2.6 习题 45

第3章 栈与队列 48

3.1 栈 48

3.1.1 栈的概念与运算 48

3.1.2 栈的存储方式 49

3.1.3 栈的应用举例 53

3.1.4 栈与递归的关系 57

3.2 队列 59

3.2.1 队列的概念与运算 59

3.2.2 队列的存储方式 60

3.2.3 队列的应用举例 66

3.3 习题 69

第4章 串 73

4.1 串的定义 73

4.1.1 串的基本概念 73

4.1.2 串的基本运算 74

4.2 串的存储结构与运算 76

4.2.1 串的定长顺序存储 76

4.2.2 串的堆分配存储 79

4.2.3 串的块链存储 81

4.3 串的应用举例 82

4.3.1 串的模式匹配算法 82

4.3.2 文本编辑 83

4.4 习题 85

第5章 树 87

5.1 树、森林的基本概念 87

5.1.1 树的定义 87

5.1.2 基本术语 88

5.1.3 树的基本操作 89

5.2 二叉树 89

5.2.1 二叉树的定义与基本操作 89

5.2.2 二叉树的性质 90

5.2.3 二叉树的存储结构 92

5.3 二叉树的遍历及应用 94

5.4 线索二叉树 99

5.4.1 线索二叉树的存储结构 99

5.4.2 二叉树的线索化 100

5.4.3 线索二叉树的遍历 101

5.5 树和森林 102

5.5.1 树的存储结构 102

5.5.2 树、森林和二叉树的相互转换 105

5.5.3 树与森林的遍历 108

5.6 哈夫曼树及其应用 109

5.6.1 哈夫曼树 109

5.6.2 哈夫曼编码 110

5.6.3 哈夫曼编码算法的实现 112

5.7 习题 116

第6章 图 119

6.1 图的定义与基本术语 119

6.1.1 图的定义 119

6.1.2 图的基本术语 120

6.2 图的存储表示 122

6.2.1 邻接矩阵表示法 122

6.2.2 邻接表表示法 125

6.2.3 十字链表 127

6.2.4 邻接多重表 128

6.3 图的遍历 129

6.3.1 深度优先搜索 129

6.3.2 广度优先搜索 131

6.4 最小生成树 133

6.4.1 普里姆算法 133

6.4.2 克鲁斯卡尔算法 135

6.5 有向无环图的应用举例 136

6.5.1 拓扑排序问题 136

6.5.2 关键路径问题 138

6.6 最短路径问题 140

6.6.1 求某一顶点到其他各顶点的最短路径 140

6.6.2 求任意两个顶点之间的最短路径 142

6.7 习题 143

第7章 查找 146

7.1 基本概念 146

7.2 静态查找表 147

7.2.1 顺序表的查找 148

7.2.2 有序表的查找 149

7.2.3 索引顺序表的查找 152

7.3 动态查找表 154

7.3.1 二叉排序树 154

7.3.2 平衡二叉树 159

7.4 哈希表 165

7.4.1 哈希表的定义 165

7.4.2 哈希函数的构造 166

7.4.3 处理冲突的方法 168

7.4.4 哈希表的查找与分析 169

7.5 习题 170

第8章 内部排序 173

8.1 排序的基本概念 173

8.2 插入排序 175

8.2.1 直接插入排序 175

8.2.2 折半插入排序 177

8.2.3 表插入排序 178

8.2.4 希尔排序 179

8.3 交换排序 180

8.3.1 冒泡排序 180

8.3.2 快速排序 182

8.4 选择排序 184

8.4.1 简单选择排序 184

8.4.2 树状选择排序 185

8.4.3 堆排序 186

8.5 归并排序 190

8.6 基数排序 192

8.6.1 多关键字排序 192

8.6.2 链式基数排序 192

8.7 习题 196

第9章 外部排序 199

9.1 外存信息的存取 199

9.1.1 磁带信息的存取 199

9.1.2 磁盘信息的存取 201

9.2 外部排序的方法 202

9.2.1 磁盘排序 202

9.2.2 磁带排序 207

9.3 习题 209

第10章 文件 210

10.1 基本概念 210

10.1.1 文件的基本概念 210

10.1.2 文件的逻辑结构及操作 211

10.1.3 文件的存储结构 211

10.2 顺序文件 212

10.3 索引文件 213

10.4 ISAM文件和VSAM文件 214

10.4.1 ISAM文件 214

10.4.2 VSAM文件 216

10.5 散列文件 218

10.6 多关键字文件 219

10.6.1 多重表文件 219

10.6.2 倒排文件 220

10.7 习题 220

参考文献 222