当前位置:首页 > 工业技术
用C实现数据结构程序设计
用C实现数据结构程序设计

用C实现数据结构程序设计PDF电子书下载

工业技术

  • 电子书积分:13 积分如何计算积分?
  • 作 者:马春江编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302388814
  • 页数:364 页
图书介绍:本教材系统地介绍了线性表、栈、队列、串、二维数组、广义表、树、森林、二叉树、图等十大结构,为后续课程操作系统、编译原理、数据库原理等课程奠定了良好的基础。本教材还结合查找和排序两大应用领域深入探讨了各类数据结构和程序设计技巧的综合应用,最后对文件系统进行了初步的介绍。书中提出了计算机编程“点式思维”的思想方法,通过基本的程序设计方式实现了大多数数据结构的基本操作。
《用C实现数据结构程序设计》目录

第1章 数据结构基础 1

1.1 面式思维和点式思维 1

1.2 数据结构背景 3

1.3 数据结构的应用案例 4

1.4 数据结构基本概念 6

1.5 逻辑结构分类 7

1.6 存储结构分类 7

1.7 数据结构基本操作 9

1.8 算法和算法效率分析基础 10

1.9 数据结构基础程序构建 13

1.10 本章总结 24

习题 25

第2章 递归思想与程序构造 29

2.1 引言 29

2.2 简单递归思想 30

2.3 复杂递归思想 34

2.4 递归思想的程序构建 37

2.5 本章总结 41

习题 42

第3章 线性表的构造与应用 44

3.1 引言 44

3.2 线性表的逻辑结构 44

3.3 线性表的顺序存储 46

3.4 线性表的链接存储 55

3.5 线性表链接存储的变形 64

3.6 线性表存储结构实现的选择标准 66

3.7 线性表的应用案例 66

3.8 线性表应用的程序构造 67

3.9 本章总结 72

习题 73

第4章 排序程序设计初步 76

4.1 引言 76

4.2 排序操作的基本概念 77

4.3 基本排序算法设计 78

4.3.1 排序算法设计基础 78

4.3.2 直接插入排序(Direct Insert Sorting) 79

4.3.3 简单选择排序(Simple Select Sorting) 82

4.3.4 冒泡排序(Bubble Sorting) 84

4.3.5 单链表插入排序(LinkList Insert Sorting) 87

4.3.6 静态链表插入排序(Static Link Insert Sorting) 87

4.4 排序的应用案例 92

4.5 本章总结 92

习题 92

第5章 栈的构造与应用 94

5.1 引言 94

5.2 栈的逻辑结构 94

5.3 栈的顺序存储 95

5.4 栈的链接存储 99

5.5 栈的应用案例 103

5.6 栈应用的程序构建 105

5.7 本章总结 110

习题 111

第6章 队列的构造与应用 116

6.1 引言 116

6.2 队列的逻辑结构 116

6.3 队列的顺序存储 117

6.4 队列的环状顺序存储 118

6.5 队列的链接存储 120

6.6 队列的应用案例 123

6.7 队列应用的程序构建 124

6.8 本章总结 127

习题 127

第7章 串的构造与应用 129

7.1 引言 129

7.2 串的逻辑结构 129

7.3 串的顺序存储 132

7.4 串的链接存储 137

7.5 串的索引存储 137

7.6 串的应用案例 146

7.7 串应用的程序构建 147

7.8 本章总结 149

习题 149

第8章 二维数组的构造与应用 151

8.1 引言 151

8.2 二维数组的逻辑结构 151

8.3 二维数组的顺序存储 152

8.4 特殊矩阵的压缩存储 153

8.5 稀疏矩阵的压缩存储 155

8.6 稀疏矩阵的十字链表存储 164

8.7 二维数组的应用案例 165

8.8 二维数组应用的程序构建 168

8.9 本章总结 174

习题 175

第9章 广义表的构造与应用 177

9.1 引言 177

9.2 广义表的逻辑结构 177

9.3 广义表的链接存储 180

9.4 广义表应用的程序构造 182

9.5 本章总结 186

习题 186

第10章 树和森林的构造与应用 188

10.1 引言 188

10.2 树的逻辑结构 188

10.3 树的顺序存储 191

10.4 树的链接存储 192

10.5 树的顺序和链接联合存储法 192

10.6 树的应用案例 194

10.7 本章总结 196

习题 196

第11章 二叉树的构造与应用 197

11.1 引言 197

11.2 二叉树的逻辑结构 197

11.3 二叉树的顺序存储 199

11.4 二叉树的链接存储 200

11.5 二叉树其他相关程序构造 201

11.6 二叉树的根序遍历程序构造 209

11.6.1 根序遍历的定义和递归算法实现 209

11.6.2 根序遍历的非递归算法实现 211

11.7 二叉树的层次遍历程序构造 214

11.8 线索二叉树程序构造 215

11.8.1 线索二叉树的定义、逻辑结构及存储结构 215

11.8.2 线索二叉树的算法设计 216

11.9 二叉树的应用案例 219

11.10 树、森林和二叉树的关系 227

11.11 二叉树应用的程序构建 228

11.12 本章总结 237

习题 237

第12章 图的构造与应用 240

12.1 引言 240

12.2 图的逻辑结构 240

12.3 图的顺序存储 244

12.4 图的链接存储 251

12.5 遍历操作的程序设计 258

12.6 公路网最短路径的研究 265

12.7 AOV网与拓扑排序的研究 270

12.8 图应用的程序构建 274

12.8.1 最小生成树的定义 278

12.8.2 构造最小生成树的Prim算法 278

12.8.3 构造最小生成树的Kruskal算法 282

12.9 本章总结 287

习题 287

第13章 查找程序设计 290

13.1 引言 290

13.2 查找的基本概念 290

13.3 基于静态数据结构的查找 291

13.3.1 静态查找表与顺序查找 291

13.3.2 有序表的折半查找 294

13.3.3 有序表的斐波那契查找和插值查找 297

13.3.4 分块查找 298

13.4 基于动态数据结构的查找 299

13.4.1 二叉排序树与相应的查找技术 299

13.4.2 平衡二叉树 300

13.5 基于哈希表结构的查找 304

13.5.1 哈希表的定义和构成 304

13.5.2 常见的哈希函数 306

13.5.3 哈希表的查找过程和冲突解决方法 307

13.6 基于字符串结构的快速查找 312

13.7 查找的应用案例 316

13.8 查找应用的程序构建 317

13.9 本章总结 320

习题 320

第14章 排序程序设计进阶 322

14.1 引言 322

14.2 折半插入排序技术 323

14.3 希尔排序技术 324

14.4 快速排序技术 326

14.5 树形选择排序技术 328

14.6 堆排序技术 329

14.7 归并排序技术 332

14.8 基数排序技术 333

14.9 本章总结 338

习题 338

第15章 文件结构初步 340

15.1 引言 340

15.2 文件的逻辑结构 340

15.3 顺序文件 342

15.4 索引文件 343

15.5 索引顺序存取方法文件 345

15.6 虚拟存储存取方法文件 346

15.7 直接存取文件(散列文件) 348

15.8 多重表文件和倒排文件 349

15.9 文件的应用案例 351

15.10 歌曲文件处理的程序构建 351

15.11 本章总结 362

习题 362

参考文献 364

相关图书
作者其它书籍
返回顶部