图书介绍

数据结构与算法pdf电子书版本下载

数据结构与算法
  • 龚丹主编 著
  • 出版社: 北京:清华大学出版社
  • ISBN:9787302235767
  • 出版时间:2010
  • 标注页数:321页
  • 文件大小:15MB
  • 文件页数:336页
  • 主题词:数据结构;算法分析

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 问题抽象与抽象数据类型 5

1.2.1 抽象——成功设计的基石 5

1.2.2 抽象数据类型的表示和实现 8

1.3 算法的基本概念 11

1.3.1 算法及算法设计的要求 11

1.3.2 算法效率的分析和量度 12

1.4 C++语言要点介绍 13

1.4.1 数组和指针 13

1.4.2 类 17

1.4.3 函数及函数重载 19

1.4.4 模板 22

1.4.5 其他自建类型的方法 25

1.5 小结 25

习题 26

第2章 线性结构 28

2.1 线性表的类型定义 28

2.1.1 线性表的逻辑特性 28

2.1.2 线性表的ADT定义 29

2.2 线性表的顺序存储表示 30

2.2.1 顺序表 30

2.2.2 线性表的其他顺序存储表示 39

2.3 线性表的链式存储 46

2.3.1 单链表 46

2.3.2 线性表的其他链式存储表示 53

2.4 线性表不同存储表示方法的对比 55

2.5 集合运算的模拟 55

2.5.1 问题描述与算法分析 56

2.5.2 算法实现 57

2.6 小结 58

习题 59

第3章 串与文本编辑 60

3.1 串的类型定义 60

3.2 串的存储表示 62

3.2.1 串的顺序存储 63

3.2.2 串的链式存储 69

3.3 串的模式匹配算法 72

3.4 文本编辑 76

3.4.1 问题描述与算法分析 76

3.4.2 算法实现 77

3.5 小结 79

习题 79

第4章 栈与递归 80

4.1 栈的类型定义 80

4.1.1 栈的逻辑特征 80

4.1.2 栈的ADT定义 81

4.2 栈的存储表示 82

4.2.1 栈的顺序存储 82

4.2.2 栈的链式存储 89

4.3 递归问题 94

4.3.1 n! 96

4.3.2 迷宫问题 98

4.4 小结 103

习题 103

第5章 队列与离散事件模拟 105

5.1 队列的类型定义 105

5.1.1 队列的逻辑特性 105

5.1.2 队列的ADT定义 106

5.2 队列的存储表示 106

5.2.1 队列的顺序存储 106

5.2.2 队列的链式存储 110

5.3 离散事件模拟 114

5.3.1 问题描述与算法分析 114

5.3.2 算法实现 116

5.4 小结 118

习题 119

第6章 数组与矩阵压缩 120

6.1 数组的类型定义 120

6.1.1 数组的逻辑特性 120

6.1.2 数组的ADT定义 121

6.2 数组的存储表示 121

6.3 矩阵压缩 122

6.3.1 特殊矩阵的压缩存储 123

6.3.2 稀疏矩阵的压缩存储 124

6.4 小结 129

习题 130

第7章 广义线性表 131

7.1 广义表的类型定义 131

7.1.1 广义表的逻辑特性 131

7.1.2 广义表的ADT定义 132

7.2 广义表的存储表示 134

7.2.1 头尾表示法 134

7.2.2 孩子兄弟表示法 137

7.3 多级管理机构问题 139

7.3.1 问题描述与算法分析 139

7.3.2 算法实现 140

7.4 小结 142

习题 143

第8章 树型结构及其应用 144

8.1 基本概念和术语 144

8.1.1 树 144

8.1.2 树的ADT定义 147

8.2 二叉树 148

8.2.1 二叉树的概念及特性 148

8.2.2 二叉树的存储表示 153

8.2.3 遍历二叉树 157

8.2.4 二叉树的线索化 160

8.3 树和森林 162

8.3.1 树的存储表示 162

8.3.2 树与二叉树的转换 165

8.3.3 树和森林的遍历 167

8.4 表达式求值问题 168

8.4.1 问题描述与算法分析 168

8.4.2 算法实现 169

8. 5哈夫曼树 171

8.5.1 最优二叉树 173

8.5.2 哈夫曼树的存储表示 174

8.5.3 哈夫曼编码问题 176

8.6 小结 179

习题 180

第9章 图型结构及其应用 182

9.1 图的类型定义 182

9.1.1 图的逻辑特性 182

9.1.2 图型结构中的基本概念和术语 183

9.1.3 图的ADT定义 185

9.2 图的存储表示 187

9.2.1 数组表示法 187

9.2.2 邻接表表示法 191

9.2.3 十字链表表示法 198

9.3 图的遍历 200

9.3.1 图的深度优先遍历 200

9.3.2 图的广度优先遍历 202

9.4 图的连通性与最小生成树问题 203

9.4.1 图的连通性 203

9.4.2 图的最小生成树 205

9.4.3 工程造价问题求解 211

9.5 图的拓扑排序与工程工期问题 213

9.5.1 图的拓扑 214

9.5.2 关键路径 217

9.5.3 工程工期问题求解 220

9.6 最短路径问题 223

9.6.1 单源点的最短路径 223

9.6.2 任意顶点对间的最短路径 225

9.7 小结 227

习题 227

第10章 查找 229

10.1 基本概念和术语 229

10.2 静态查找表 230

10.2.1 简单顺序查找表 230

10.2.2 有序表的查找 232

10.2.3 索引顺序表的查找 235

10.2.4 静态树表查找 236

10.3 动态查找表 239

10.3.1 二叉排序树和平衡二叉树 239

10.3.2 B-树 252

10.3.3 B+树 255

10.4 哈希查找表 255

10.4.1 哈希表及散列存储 256

10.4.2 哈希表的构造 257

10.4.3 哈希表的查找 261

10.5 小结 263

习题 263

第11章 内部排序 265

11.1 基本概念和术语 265

11.2 插入排序 267

11.2.1 直接插入排序 267

11.2.2 希尔排序 269

11.3 交换排序 271

11.3.1 冒泡排序 271

11.3.2 快速排序 272

11.4 选择排序 274

11.4.1 简单选择排序 275

11.4.2 树型选择排序 276

11.4.3 堆排序 277

11.5 归并排序 279

11.6 基数排序 282

11.7 小结 282

习题 283

第12章 经典算法与实例分析 286

12.1 STL基础知识 286

12.1.1 STL与泛型编程 286

12.1.2 STL的部件 288

12.1.3 各部件的协同工作 291

12.1.4 STL部件的应用 292

12.2 分治 300

12.2.1 算法理论介绍 300

12.2.2 分治算法的应用 301

12.3 动态规划 306

12.3.1 算法理论介绍 306

12.3.2 动态规划算法的应用 308

12.4 回溯 312

12.4.1 算法理论介绍 312

12.4.2 回溯算法的应用 313

12.5 小结 320

习题 320

参考文献 321

精品推荐