图书介绍

数据结构教程【2025|PDF|Epub|mobi|kindle电子书版本百度云盘下载】

数据结构教程
  • 王少波,孙夫雄编著 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302254072
  • 出版时间:2011
  • 标注页数:342页
  • 文件大小:83MB
  • 文件页数:357页
  • 主题词:数据结构-高等学校-教材

PDF下载


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

下载说明

数据结构教程PDF格式电子书版下载

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

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

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

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

图书目录

第1章 绪论1

1.1 什么是数据结构1

1.1.1 数据结构相关事例2

1.1.2 数据结构的定义5

1.2 数据结构的相关概念5

1.2.1 数据和信息5

1.2.2 数据元素6

1.2.3 结构类型6

1.2.4 静态存储空间分配和动态存储空间分配9

1.3 数据类型、抽象数据类型和数据结构11

1.3.1 数据类型11

1.3.2 抽象数据类型12

1.3.3 数据结构、数据类型和抽象数据类型13

1.3.4 抽象数据类型的三元组表示13

1.4 算法及算法分析、算法描述14

1.4.1 算法和程序14

1.4.2 程序性能和算法效率15

1.4.3 算法分析17

1.4.4 算法描述20

习题123

第2章 线性表和串27

2.1 线性表的定义27

2.1.1 线性表的逻辑结构27

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

2.2 线性表的顺序存储及操作28

2.2.1 线性表顺序存储28

2.2.2 线性表顺序存储结构下的操作30

2.3 简单链表存储结构及操作34

2.3.1 简单链表的存储34

2.3.2 简单链表的操作36

2.4 双向链表42

2.4.1 双向链表的存储42

2.4.2 双向链表的操作43

2.5 单向循环链表和双向循环链表45

2.5.1 单向循环链表的存储45

2.5.2 双向循环链表的存储46

2.6 模拟指针方式构造简单链表47

2.6.1 模拟链表的存储47

2.6.2 模拟链表的操作48

2.7 多重链表51

2.8 链表应用53

2.8.1 节点移至表首运算53

2.8.2 链表的逆向运算54

2.8.3 多项式的相加运算55

2.8.4 十字链表结构的应用59

2.8.5 一个较复杂的机票售票系统的数据结构方案61

2.9 串63

2.9.1 串的定义63

2.9.2 串的逻辑结构及运算63

2.9.3 串的顺序存储结构64

2.9.4 串的链式存储结构64

习题265

第3章 栈与队列68

3.1 堆栈的定义68

3.1.1 堆栈的逻辑结构68

3.1.2 堆栈的抽象数据类型68

3.2 堆栈的顺序存储及操作69

3.2.1 堆栈顺序存储69

3.2.2 堆栈顺序存储结构下的操作70

3.3 堆栈的链式存储及操作72

3.3.1 堆栈的链式存储72

3.3.2 链式栈的操作73

3.4 多个栈共享邻接空间75

3.5 堆栈的应用76

3.5.1 检验表达式中括号的匹配76

3.5.2 表达式的求值78

3.5.3 背包问题求解79

3.5.4 地图四染色问题求解81

3.6 队列的定义86

3.6.1 队列的逻辑结构86

3.6.2 队列的抽象数据类型86

3.7 队列的顺序存储及操作87

3.7.1 队列顺序存储87

3.7.2 队列顺序存储结构下的操作90

3.8 队列的链式存储及操作92

3.8.1 队列的链式存储92

3.8.2 链式队列的操作93

3.9 队列的应用95

3.9.1 列车重排95

3.9.2 投资组合问题98

习题3101

第4章 树和二叉树103

4.1 树、森林的概念103

4.1.1 树的定义103

4.1.2 树的术语103

4.2 二叉树的定义及性质105

4.2.1 二叉树的定义105

4.2.2 二叉树的性质107

4.2.3 二叉树的抽象数据类型109

4.3 二叉树的存储结构109

4.3.1 二叉树的顺序存储109

4.3.2 二叉树的链式存储结构111

4.4 二叉树链式存储结构下的操作111

4.4.1 二叉树的操作概念111

4.4.2 二叉树的前序、中序、后序遍历操作113

4.4.3 二叉树的层次遍历操作120

4.4.4 二叉树的其他操作123

4.5 线索树125

4.5.1 线索树的概念125

4.5.2 二叉线索树的操作128

4.6 一般树的表示和遍历137

4.6.1 一般树的二叉链表示以及它与二叉树的关系137

4.6.2 二叉树、一般树及森林的关系139

4.6.3 一般树的遍历概念139

4.6.4 一般树的运算140

4.7 树的应用142

4.7.1 分类二叉树142

4.7.2 堆树147

4.7.3 树的路径长度和哈夫曼树158

习题4168

第5章 图172

5.1 图的概念172

5.1.1 图的定义172

5.1.2 图的术语172

5.1.3 图的抽象数据类型175

5.2 图的存储结构176

5.2.1 邻接矩阵表示法176

5.2.2 邻接表表示法178

5.2.3 十字链表181

5.2.4 邻接多重表182

5.3 图的遍历184

5.3.1 深度优先搜索遍历184

5.3.2 宽度优先搜索遍历187

5.3.3 图的连通性189

5.4 最小生成树192

5.4.1 生成树192

5.4.2 最小代价生成树192

5.5 最短路径196

5.5.1 单源最短路径196

5.5.2 任意两个顶点之间的路径198

5.6 拓扑排序201

5.6.1 有向无环图201

5.6.2 AOV网的概念202

5.6.3 AOV网的算法204

5.7 关键路径206

5.7.1 AOE的概念206

5.7.2 关键路径的概念207

5.7.3 关键路径的算法207

习题5210

第6章 数组、矩阵和广义表214

6.1 数组的定义214

6.1.1 数组的逻辑结构215

6.1.2 数组的抽象数据类型216

6.2 数组的顺序表示及运算217

6.2.1 数组的顺序存储结构217

6.2.2 数组顺序存储结构描述219

6.2.3 数组顺序存储结构下的操作221

6.3 矩阵的存储及操作222

6.3.1 矩阵的定义及操作222

6.3.2 矩阵的顺序存储222

6.3.3 特殊矩阵的压缩存储及操作223

6.3.4 稀疏矩阵的压缩存储及操作225

习题6238

第7章 排序241

7.1 排序的基本概念241

7.2 待排序数据对象的存储结构243

7.3 插入排序244

7.3.1 直接插入排序244

7.3.2 折半插入算法245

7.3.3 希尔排序246

7.4 交换排序248

7.4.1 冒泡排序248

7.4.2 快速排序250

7.5 选择排序253

7.5.1 直接选择排序253

7.5.2 堆排序255

7.5.3 树形选择排序255

7.6 归并排序256

7.7 基数排序259

7.7.1 用二维数组表示桶260

7.7.2 用链式存储结构实现桶262

7.8 内部排序方法比较264

7.9 外排序265

7.9.1 外部排序265

7.9.2 多路平衡归并267

习题7271

第8章 查找274

8.1 查找的概念274

8.2 静态查找技术275

8.2.1 顺序查找276

8.2.2 二分查找277

8.2.3 分块查找280

8.3 动态查找技术283

8.3.1 平衡二叉树283

8.3.2 B-树294

8.3.3 B+树301

8.4 哈希表的查找301

8.4.1 基本概念301

8.4.2 构造哈希函数的方法302

8.4.3 哈希冲突的解决方法304

8.4.4 哈希表的查找306

8.4.5 哈希算法307

8.4.6 哈希表的查找分析309

习题8310

第9章 文件313

9.1 外部存储设备313

9.1.1 磁带313

9.1.2 磁盘314

9.1.3 光盘315

9.1.4 闪存315

9.2 基本概念316

9.3 顺序文件317

9.4 索引文件318

9.5 索引顺序文件319

9.6 直接存取文件320

9.7 倒排文件321

习题9322

附录A VC++6.0编译环境介绍324

附录B 实践内容及要求338

参考文献342

热门推荐