图书介绍

数据结构教程PDF|Epub|txt|kindle电子书版本网盘下载

数据结构教程
  • 朱明方,吴及编著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:711120364X
  • 出版时间:2007
  • 标注页数:309页
  • 文件大小:22MB
  • 文件页数:321页
  • 主题词:数据结构-高等学校-教材

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 二元关系的定义1

1.1.2 二元关系的基本性质和几种重要关系3

1.2 数据结构4

1.2.1 数据结构的引出4

1.2.2 数据的逻辑结构和存储结构5

1.2.3 数据结构的表示8

1.3 抽象数据类型9

1.3.1 抽象数据类型9

1.3.2 面向对象方法与抽象数据类型11

1.3.3 抽象数据类型的实现12

1.4 算法与算法评价14

1.4.1 算法14

1.4.2 算法描述与算法描述语言16

1.4.3 算法的评价26

1.5 习题30

第2章 线性表的顺序存储及其运算32

2.1 线性表的概念32

2.1.1 线性表32

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

2.2 线性表的顺序存储及其运算35

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

2.2.2 顺序表的基本运算36

2.2.3 顺序表的类定义41

2.3 栈42

2.3.1 栈42

2.3.2 栈的抽象数据类型45

2.3.3 栈的顺序存储及其运算45

2.3.4 顺序栈的类定义49

2.3.5 栈应用举例49

2.4 队列70

2.4.1 队列及其抽象数据类型70

2.4.2 顺序队列及其运算71

2.4.3 队列应用举例76

2.4.4 优先队列81

2.5 数组与特殊矩阵的表示83

2.5.1 数组的顺序存储83

2.5.2 规则矩阵的压缩存储85

2.5.3 稀疏矩阵的三列二维数组表示——三元组顺序表87

2.6 习题90

第3章 链表92

3.1 线性表的链式存储——线性链表92

3.1.1 线性链表的概念92

3.1.2 线性链表的运算93

3.1.3 线性链表的类定义100

3.2 链式栈与链式队列101

3.2.1 链式栈101

3.2.2 链式队列105

3.3 循环链表108

3.3.1 循环链表的结构特点108

3.3.2 循环链表的基本运算109

3.4 多重链表113

3.4.1 多重链表的结构113

3.4.2 双向链表114

3.4.3 稀疏矩阵的十字链表表示116

3.5 广义表118

3.5.1 广义表的概念118

3.5.2 广义表的存储表示120

3.5.3 广义表的基本运算122

3.6 习题125

第4章 树与二叉树128

4.1 树的基本概念128

4.1.1 树结构的引出128

4.1.2 树的定义与表示129

4.1.3 树的性质131

4.2 二叉树及其运算132

4.2.1 二叉树的定义132

4.2.2 二叉树的基本性质132

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

4.2.4 二叉树的存储结构136

4.2.5 二叉树的遍历及其他运算137

4.2.6 线索二叉树143

4.2.7 二叉树的计数146

4.3 二叉树的应用148

4.3.1 利用二叉树实现表达式线性化149

4.3.2 最优二叉树150

4.3.3 二叉搜索树156

4.3.4 堆161

4.4 树的运算169

4.4.1 树的抽象数据类型169

4.4.2 树的存储结构169

4.4.3 树的遍历171

4.4.4 树遍历运算的应用——树的其他运算172

4.4.5 树结构应用举例177

4.5 森林的遍历180

4.5.1 森林与二叉树的转换180

4.5.2 森林的遍历181

4.6 习题182

第5章 图184

5.1 图的基本概念184

5.1.1 图的定义和概念184

5.1.2 图的抽象数据类型187

5.1.3 欧拉路径和汉密尔顿路径188

5.2 图的存储结构189

5.2.1 图的邻接矩阵表示190

5.2.2 图的邻接表表示192

5.2.3 图的其他表示方法195

5.3 图的遍历197

5.3.1 图的深度优先遍历197

5.3.2 图的广度优先遍历198

5.3.3 图遍历的应用199

5.3.4 广义图搜索201

5.3.5 图的连通性202

5.4 有向图与有向无环图203

5.4.1 有向图的连通性和传递闭包203

5.4.2 有向无环图和拓扑排序205

5.4.3 关键路径208

5.5 最小生成树209

5.5.1 图的生成树与最小生成树209

5.5.2 普里姆(Prim)算法211

5.5.3 克鲁斯卡尔(Kruskal)算法213

5.5.4 贪心算法215

5.6 最短路径问题216

5.6.1 单源最短路径216

5.6.2 带负权值边的单源最短路径218

5.6.3 全源最短路径220

5.6.4 动态规划算法223

5.7 图应用举例224

5.7.1 问题描述224

5.7.2 问题求解思路225

5.8 习题225

第6章 查找228

6.1 线性查找表228

6.1.1 顺序查找229

6.1.2 折半查找229

6.1.3 斐波那契查找231

6.1.4 线性查找表的性能比较231

6.2 二叉搜索树的查找性能231

6.2.1 二叉搜索树与线性查找表的比较231

6.2.2 二叉搜索树的查找性能233

6.3 AVL树234

6.3.1 BST的旋转操作234

6.3.2 AVL树的插入和平衡化旋转235

6.3.3 AVL树的删除237

6.3.4 AVL树的性能239

6.4 B-树240

6.4.1 多路动态搜索树240

6.4.2 B-树的查找241

6.4.3 B-树的插入241

6.4.4 B-树的删除242

6.5 2-3-4树和红黑树245

6.5.1 2-3-4树245

6.5.2 红黑树246

6.6 散列方法249

6.6.1 散列技术249

6.6.2 散列函数250

6.6.3 冲突处理252

6.6.4 散列的删除254

6.6.5 散列的性能255

6.7 静态索引结构255

6.7.1 索引查找255

6.7.2 索引存储方式256

6.7.3 索引文件结构258

6.8 模式匹配算法261

6.8.1 字符串的概念和ADT261

6.8.2 字符串的存储表示262

6.8.3 字符串的模式匹配和简单匹配算法263

6.8.4 KMP算法263

6.9 习题266

第7章 排序268

7.1 排序的概念及算法性能分析268

7.2 基本排序方法269

7.2.1 冒泡排序270

7.2.2 插入排序271

7.2.3 直接选择排序275

7.2.4 基本排序方法的比较276

7.3 快速排序277

7.3.1 快速排序的过程277

7.3.2 快速排序的性能分析279

7.3.3 快速排序的改进算法279

7.3.4 三路划分的快速排序算法280

7.4 归并排序282

7.4.1 二路归并282

7.4.2 自底向上的归并排序283

7.4.3 自顶向下的归并排序284

7.5 锦标赛排序285

7.6 堆排序286

7.6.1 堆排序的思想286

7.6.2 堆排序的实现288

7.7 内排序方法分析289

7.7.1 排序方法的下界289

7.7.2 内排序方法的比较291

7.8 线性时间复杂度的排序算法292

7.8.1 计数排序292

7.8.2 箱排序293

7.8.3 基数排序294

7.9 排序网络297

7.9.1 排序网络的概念297

7.9.2 巴彻尔奇偶归并排序298

7.10 外部排序302

7.10.1 外部排序方法302

7.10.2 基于败者树的k路归并算法302

7.10.3 排序-归并的改进304

7.11 习题307

参考文献309

热门推荐