图书介绍

数据结构 C/C++版PDF|Epub|txt|kindle电子书版本网盘下载

数据结构 C/C++版
  • 熊回香编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787512100824
  • 出版时间:2010
  • 标注页数:416页
  • 文件大小:29MB
  • 文件页数:425页
  • 主题词:数据结构;C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

数据结构 C/C++版PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1章 绪论1

1.1 数据结构的产生和发展1

1.1.1 数据结构的产生1

1.1.2 数据结构的发展2

1.2 数据结构的研究对象2

1.3 基本概念和术语4

1.4 数据结构与算法的关系8

1.5 算法与算法分析9

1.5.1 算法9

1.5.2 算法的描述方法10

1.5.3 算法设计目标11

1.5.4 算法效率的度量12

1.6 与算法描述有关的C++知识15

1.6.1 C++的输入和输出15

1.6.2 函数16

1.6.3 类和对象18

1.6.4 变量的引用类型22

1.6.5 运算符重载23

1.6.6 数据类型相关说明24

1.6.7 两个相关的头文件24

本章小结27

习题一27

第2章 线性表30

2.1 线性表的基本概念30

2.1.1 线性表的定义30

2.1.2 线性表的抽象数据类型32

2.2 线性表的顺序存储和基本操作35

2.2.1 线性表的顺序存储——顺序表35

2.2.2 顺序表的基本操作37

2.2.3 顺序表基本操作的算法分析41

2.3 线性表的链式存储和基本操作42

2.3.1 链式存储的概念42

2.3.2 单链表43

2.3.3 单链表的基本操作44

2.3.4 单链表基本操作的算法分析50

2.3.5 双向链表51

2.3.6 循环链表54

2.4 顺序表和链表的综合比较56

2.5 静态链表57

2.6 线性表算法设计举例59

2.6.1 顺序表算法设计举例59

2.6.2 单链表算法设计举例61

本章小结65

习题二66

第3章 堆栈与队列69

3.1 堆栈69

3.1.1 堆栈的基本概念69

3.1.2 堆栈的顺序存储和基本操作71

3.1.3 堆栈的链式存储和基本操作77

3.2 堆栈的应用举例81

3.3 队列88

3.3.1 队列的基本概念88

3.3.2 队列的顺序存储和基本操作89

3.3.3 队列的链式存储和基本操作96

3.3.4 其他队列100

3.4 队列的应用举例101

本章小结109

习题三110

第4章 串113

4.1 串的基本概念113

4.1.1 串的定义113

4.1.2 串的抽象数据类型115

4.2 串的顺序存储和基本操作116

4.2.1 串的顺序存储——顺序串116

4.2.2 顺序串的基本操作117

4.3 串的链式存储和基本操作124

4.3.1 串的链式存储——链式串124

4.3.2 链式串的基本操作125

4.4 串的模式匹配算法132

4.4.1 Brute-Force算法132

4.4.2 KMP算法133

4.5 串的应用举例137

本章小结144

习题四145

第5章 数组和广义表147

5.1 数组的基本概念148

5.1.1 数组的定义148

5.1.2 数组的抽象数据类型148

5.2 数组的存储结构149

5.2.1 一维数组的存储149

5.2.2 多维数组的存储149

5.3 数组的顺序存储表示和基本操作151

5.3.1 数组的顺序存储表示151

5.3.2 数组的基本操作151

5.3.3 数组的应用举例154

5.4 矩阵的压缩存储157

5.4.1 特殊矩阵的压缩存储157

5.4.2 稀疏矩阵的压缩存储159

5.5 广义表173

5.5.1 广义表的基本概念173

5.5.2 广义表的存储结构175

5.5.3 广义表的基本操作177

本章小结184

习题五184

第6章 树和二叉树187

6.1 树188

6.1.1 树的基本概念188

6.1.2 树的存储结构193

6.1.3 树的基本操作197

6.2 二叉树203

6.2.1 二叉树的基本概念203

6.2.2 二叉树的存储结构207

6.2.3 二叉树的遍历210

6.2.4 二叉树的其他操作215

6.3 线索二叉树223

6.3.1 线索二叉树的基本概念223

6.3.2 线索二叉树的存储结构224

6.3.3 二叉树的线索化225

6.3.4 线索二叉树的基本操作226

6.4 哈夫曼树230

6.4.1 哈夫曼树的基本概念230

6.4.2 构造哈夫曼树232

6.4.3 哈夫曼编码235

6.5 树、森林与二叉树的转换238

6.5.1 树与二叉树的转换238

6.5.2 森林与二叉树的转换239

6.6 树的应用举例——PATRICIA tree240

本章小结244

习题六244

第7章 图248

7.1 图的基本概念249

7.1.1 图的定义249

7.1.2 图的基本术语249

7.1.3 图的抽象数据类型252

7.2 图的存储结构253

7.2.1 邻接矩阵254

7.2.2 邻接表255

7.2.3 十字邻接表257

7.2.4 邻接多重表258

7.2.5 边集数组259

7.3 图的实现259

7.3.1 邻接矩阵存储结构下图基本操作的实现260

7.3.2 邻接表存储结构下图基本操作的实现268

7.4 图的遍历275

7.4.1 深度优先遍历276

7.4.2 广度优先遍历277

7.5 最小生成树282

7.5.1 最小生成树的概念282

7.5.2 普里姆算法283

7.5.3 克鲁斯卡尔算法288

7.6 最短路径292

7.6.1 最短路径的概念292

7.6.2 从一顶点到其余各顶点的最短路径293

7.6.3 每对顶点之间的最短路径297

7.7 拓扑排序302

7.7.1 拓扑排序的概念302

7.7.2 拓扑排序的算法303

7.8 关键路径306

7.8.1 关键路径的概念306

7.8.2 顶点事件的发生时间307

7.8.3 求关键路径的算法308

7.8.4 求关键路径的算法描述310

本章小结313

习题七313

第8章 查找318

8.1 查找的基本概念318

8.2 静态查找320

8.2.1 顺序查找320

8.2.2 二分查找321

8.2.3 索引查找323

8.3 动态查找326

8.3.1 二叉排序树326

8.3.2 平衡二叉树333

8.3.3 B-树和B+树337

8.4 哈希表查找345

8.4.1 哈希表查找的基本概念345

8.4.2 哈希函数构造方法347

8.4.3 哈希冲突解决方法349

8.4.4 哈希表的操作351

8.4.5 哈希表查找的性能分析359

本章小结359

习题八360

第9章 排序363

9.1 排序的基本概念363

9.2 插入排序365

9.2.1 直接插入排序365

9.2.2 希尔排序367

9.3 选择排序369

9.3.1 直接选择排序369

9.3.2 堆排序370

9.4 交换排序375

9.4.1 冒泡排序375

9.4.2 快速排序376

9.5 归并排序380

9.6 基数排序382

9.7 各种内排序方法的性能比较384

9.8 外排序386

9.8.1 外存信息的存取386

9.8.2 外排序的过程387

9.8.3 多路平衡归并388

9.8.4 初始归并段的生成390

9.8.5 最佳归并树391

本章小结393

习题九393

第10章 文件397

10.1 文件概述397

10.1.1 文件的存储介质397

10.1.2 文件的基本概念399

10.2 顺序文件400

10.3 索引文件402

10.4 ISAM文件403

10.5 VSAM文件405

10.6 哈希文件407

10.7 多关键字文件408

10.7.1 多重表文件408

10.7.2 倒排文件409

10.8 文件的应用举例409

本章小结410

习题十411

附录A 用面向对象的方法(C++的类)描述顺序表类413

参考文献416

热门推荐