图书介绍

算法与数据结构 C++语言版PDF|Epub|txt|kindle电子书版本下载

算法与数据结构 C++语言版
  • 冯广慧,吴昊,文全刚编著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:7121350719
  • 出版时间:2019
  • 标注页数:336页
  • 文件大小:122MB
  • 文件页数:345页
  • 主题词:

PDF下载


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

下载说明

算法与数据结构 C++语言版PDF格式电子书版下载

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

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

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

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

图书目录

第1章 概论1

1.1什么是数据结构1

1.2基本概念和术语4

1.3算法和算法分析7

1.3.1算法的定义及特性7

1.3.2算法的设计要求8

1.3.3算法效率的衡量方法9

1.3.4算法的时间复杂度10

1.3.5算法的空间复杂度15

1.4抽象数据类型16

习题18

第2章 线性表20

2.1线性表的类型定义20

2.1.1线性表的概念20

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

2.2线性表的顺序表示和实现22

2.2.1线性表的顺序表示22

2.2.2顺序表基本运算的实现23

2.3线性表的链式表示和实现28

2.3.1线性表的链式表示29

2.3.2单链表上基本运算的实现32

2.4双链表40

2.5循环链表44

2.6线性表实现方法的比较46

2.7算法设计举例47

习题52

第3章 栈和队列55

3.1栈55

3.1.1栈的类型定义55

3.1.2顺序栈的表示和实现57

3.1.3链栈的表示和实现60

3.2栈的应用举例62

3.2.1十进制数转换为其他进制数62

3.2.2表达式中括号的匹配检查63

3.2.3表达式求值64

3.2.4利用栈消除递归72

3.3队列77

3.3.1队列的类型定义77

3.3.2循环队列——队列的顺序表示和实现78

3.3.3链队列——队列的链式表示和实现82

3.4算法设计举例83

习题87

第4章 串90

4.1串的基本概念90

4.2串的表示和实现91

4.2.1串的顺序存储结构91

4.2.2串的链式存储结构94

4.3串的模式匹配95

4.3.1朴素的模式匹配算法95

4.3.2 KMP算法96

习题101

第5章 数组104

5.1数组的基本概念104

5.2矩阵的压缩存储107

5.2.1特殊矩阵107

5.2.2稀疏矩阵110

5.3算法设计举例117

习题121

第6章 树和二叉树124

6.1树的概念124

6.2二叉树的概念和性质126

6.2.1二叉树的概念和抽象数据类型126

6.2.2二叉树的性质129

6.3二叉树的表示和实现131

6.3.1二叉树的存储结构131

6.3.2二叉树的遍历运算133

6.3.3二叉树的其他基本运算141

6.4树和森林143

6.4.1树的存储结构143

6.4.2树、森林和二叉树的相互转换146

6.4.3树和森林的遍历运算148

6.4.4树和森林的其他基本运算151

6.5线索二叉树154

6.5.1线索二叉树的概念154

6.5.2线索二叉树的基本运算157

6.6算法设计举例161

习题162

第7章 树和二叉树的应用166

7.1表达式树166

7.2哈夫曼树和哈夫曼编码171

7.2.1哈夫曼树171

7.2.2哈夫曼编码175

7.3堆和优先级队列178

7.3.1堆178

7.3.2优先级队列179

7.4并查集184

7.5算法设计举例187

习题189

第8章 图191

8.1图的概念191

8.2图的存储结构196

8.2.1邻接矩阵196

8.2.2邻接表200

8.2.3十字链表205

8.2.4邻接多重表205

8.3图的遍历206

8.3.1深度优先遍历207

8.3.2广度优先遍历209

8.3.3图的连通分量和生成树212

习题213

第9章 图的应用217

9.1最小生成树217

9.1.1最小生成树的概念217

9.1.2 Prim算法218

9.1.3 Kruskal算法222

9.2有向无环图及其应用225

9.2.1拓扑排序225

9.2.2关键路径230

9.3最短路径236

9.3.1单源点最短路径236

9.3.2每对顶点之间的最短路径240

习题243

第10章 集合与查找247

10.1基本概念247

10.2静态查找表上的查找248

10.2.1顺序查找248

10.2.2折半查找250

10.2.3分块查找254

10.3动态查找表上的查找256

10.3.1二叉查找树256

10.3.2平衡二叉树263

10.3.3 B树275

10.3.4 B+树280

10.3.5字典树281

10.4算法设计举例282

习题285

第11章 散列表288

11.1散列表的概念288

11.2构造散列函数的方法289

11.2.1直接定址法289

11.2.2折叠法289

11.2.3数字分析法289

11.2.4平方取中法290

11.2.5除留余数法290

11.3解决冲突的方法291

11.3.1闭散列法291

11.3.2开散列法293

11.4散列表的实现294

11.4.1闭散列表的表示和实现294

11.4.2开散列表的表示和实现298

11.4.3闭散列表与开散列表的比较302

11.5散列表的查找性能分析302

习题303

第12章 排序306

12.1排序的基本概念306

12.2插入排序307

12.2.1直接插入排序307

12.2.2折半插入排序308

12.2.3希尔排序309

12.3交换排序310

12.3.1冒泡排序310

12.3.2快速排序311

12.4选择排序315

12.4.1直接选择排序315

12.4.2堆排序316

12.4.3锦标赛排序320

12.5归并排序320

12.6基数排序322

12.7各种内部排序方法的比较324

12.8外部排序327

12.8.1置换选择排序328

12.8.2多路归并排序330

习题331

附录A 上机实验参考题目334

参考文献336

热门推荐