图书介绍

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

数据结构与算法
  • 王立柱编著 著
  • 出版社: 北京:机械工业出版社
  • ISBN:9787111434979
  • 出版时间:2013
  • 标注页数:253页
  • 文件大小:72MB
  • 文件页数:266页
  • 主题词:数据结构-高等学校-教材;算法分析-高等学校-教材

PDF下载


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

下载说明

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

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

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

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

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

图书目录

第1章 从C到C++ 1

1.1 从数组到顺序表 1

1.1.1 数组的局限性 1

1.1.2 顺序表的声明 2

1.1.3 顺序表的实现 4

1.1.4 删除顺序表的重复数据 7

1.1.5 数据抽象 8

1.2 C语言的局限性 10

1.3 C++基础知识 13

1.3.1 变量和const常量 13

1.3.2 输入/输出 13

1.3.3 内联函数 16

1.3.4 运算符重载 17

1.3.5 函数重载 18

1.3.6 引用型 19

1.3.7 构造函数 25

1.3.8 提取符和插入符重载 25

1.3.9 默认参数 27

1.3.1 0 new和delete运算符 28

1.4 C++顺序表类 28

1.4.1 从C顺序表到C++顺序表类 28

1.4.2 顺序表类的实现 32

1.4.3 复制构造函数 33

1.4.4 复制赋值运算符重载 34

1.4.5 下标运算符重载 35

1.4.6 构造函数与初始化 36

1.4.7 new和delete运算符与构造和析构 36

1.4.8 类定义 37

1.5 函数模板和类模板 37

1.5.1 函数模板 37

1.5.2 顺序表类模板 40

1.6 继承和多态性 41

1.6.1 构造函数的参数初始化表 41

1.6.2 继承 43

1.6.3 受保护成员 45

1.6.4 多态性和虚函数 46

1.6.5 虚析构函数 49

1.6.6 纯虚函数和抽象类 50

习题 52

第2章 String类 55

2.1 String类的声明 55

2.2 String类的实现 57

2.2.1 构造和析构 57

2.2.2 成员赋值运算符 59

2.2.3 成员转换 60

2.2.4 串连接 61

2.2.5 关系运算 64

2.2.6 求子串 65

2.2.7 子串插入 67

2.2.8 子串删除 69

2.2.9 下标运算符 71

2.2.1 0字符查找 71

2.2.1 1输入/输出 71

2.3 模式匹配 73

2.4 深入讨论 74

2.4.1 转换赋值运算符函数的替代 74

2.4.2 成员函数“类串+C串”的替代 75

2.4.3 explicit修饰符 75

习题 76

第3章 向量类模板Vector 78

3.1 Vector定义 78

3.2 通用算法和迭代器 81

3.3 Vector的插入和删除函数 84

3.4 求素数 85

3.5 函数对象 86

3.6 深入讨论——函数模板实例化中的问题 88

习题 88

第4章 链表类模板和适配器 90

4.1 链表类模板List 90

4.2 适配器 97

4.2.1 链栈 97

4.2.2 链队列 98

4.2.3 优先级链队列 98

习题 99

第5章 二叉树 100

5.1 二叉树的基本概念 100

5.2 二叉树的性质 101

5.3 二叉树的存储结构 102

5.3.1 二叉树顺序存储结构 102

5.3.2 二叉树链式存储结构 103

5.4 二叉树层次遍历 105

5.4.1 层次遍历 105

5.4.2 把二叉树的顺序存储转化为链式存储 108

5.4.3 垂直输出二叉树 108

5.5 二叉树前序遍历 111

5.5.1 前序遍历递归算法 111

5.5.2 前序遍历非递归算法 112

5.5.3 快速排序 112

5.5.4 集合的幂集 114

5.6 二叉树中序遍历 116

5.6.1 中序遍历递归算法 116

5.6.2 中序遍历非递归算法 117

5.6.3 汉诺塔递归算法 117

5.7 二叉树后序遍历 119

5.7.1 后序遍历递归算法 119

5.7.2 后序遍历非递归算法 119

5.7.3 求二叉树的深度以及二叉链表的复制和删除 120

5.7.4 把二叉树的顺序存储转化为链式存储的递归算法 121

5.7.5 由前序和中序序列建立二叉链表 122

习题 123

第6章 堆 124

6.1 小根堆Heap类 124

6.2 堆排序 129

6.3 哈夫曼树 131

6.3.1 哈夫曼树的定义 131

6.3.2 建立哈夫曼树 132

6.3.3 哈夫曼编码 133

习题 134

第7章 树 135

7.1 树的基本概念和存储 135

7.2 Tree类 138

7.3 树的遍历 141

7.4 八皇后 144

习题 147

第8章 图 148

8.1 图的基本概念 148

8.2 Graph类 151

8.3 图的遍历 160

8.3.1 广度优先遍历 160

8.3.2 深度优先遍历 162

8.4 最小生成树 163

8.4.1 普里姆算法 164

8.4.2 克鲁斯卡尔算法 170

8.5 最短路径 173

8.5.1 求单源最短路径的迪克斯特拉算法 173

8.5.2 所有顶点对之间的最短带权路径 179

8.5.3 一顶点对之间的最短带权路径 183

8.6 拓扑序列 186

8.7 关键路径 189

8.8 迷宫求解 194

习题 197

第9章 二叉搜索树 198

9.1 类型声明与实现 198

9.2 中序迭代器 203

9.3 频率统计 206

9.4 中序线索二叉树 207

习题 208

第10章 平衡二叉搜索树 209

10.1 动态平衡方法 209

10.2 平衡二叉搜索树类型 213

习题 216

第11章 B树 217

11.1 线性索引 217

11.2 静态m路搜索树 218

11.3 B树 219

11.4 B+树 223

习题 224

第12章 散列 225

12.1 散列表 225

12.2 散列函数 226

12.2.1 平方取中法 226

12.2.2 除留余数法 227

12.2.3 折叠法 227

12.2.4 数字分析法 228

12.3 分离链接法 228

12.4 开放定址法 230

12.4.1 线性探查法 231

12.4.2 平方探查法 231

12.4.3 双散列函数探查法 231

习题 231

第13章 排序和性能分析 232

13.1 性能分析 232

13.1.1 时间复杂性分析 232

13.1.2 空间复杂性分析 233

13.2 插入排序 234

13.2.1 直接插入排序 234

13.2.2 折半插入排序 235

13.2.3 希尔排序 237

13.3 交换排序 238

13.3.1 起泡排序 238

13.3.2 快速排序 239

13.4 选择排序 240

13.4.1 直接选择排序 240

13.4.2 堆排序 241

13.4.3 锦标赛排序 242

13.5 归并排序 246

13.5.1 归并 246

13.5.2 迭代归并排序 247

13.6 基数排序 248

13.7 外排序 249

13.7.1 外排序的基本过程 250

13.7.2 k路归并 251

习题 253

精品推荐