《图解数据结构与算法 全彩印刷》简介:

《图解数据结构与算法》是一本“少字多图”、以图描述原理、形象且易于理解的数据结构与算法图书。全书共分为7章,首先介绍了一些基础的数据结构,包括数组、链表、栈和队列等;然后通过例子来讲解递归和动态规划的算法思想;接着对树进行了讲解,包括二叉树、二叉搜索树、AVL树、红黑树、2-3树、B树以及Trie树等不同用途的树;在树的基础上讲解了堆,包括二叉堆、二项堆和斐波那契堆三种堆结构;还讲解了图结构,主要包括图的表示方式、图的遍历、图的 短路径以及 小生成树; 后讲解了比较排序和非比较排序,其中,比较排序包括选择排序、冒泡排序、插入排序、快速排序、希尔排序、合并排序和堆排序等,而非比较排序则包括计数排序、基数排序和桶排序等。

《图解数据结构与算法》适合对数据结构和算法感兴趣并且想要通过一种轻松的方式学习和掌握数据结构与算法的读者阅读。无论他们是否有编程基础,均可看懂本书。

《图解数据结构与算法 全彩印刷》目录:

第 1章 基础数据结构 1
1.1 数组 1
1.1.1 一维数组 1
1.1.2 二维数组 2
1.1.3 三维及 高维数组 3
1.2 链表 4
1.2.1 单向链表 5
1.2.2 双向链表 14
1.3 栈 19
1.3.1 基于数组的栈 19
1.3.2 基于链表的栈 21
1.4 队列 23
1.4.1 基于数组的队列 23
1.4.2 基于链表的队列 26
第 2章 递归与动态规划 28
2.1 递归 28
2.1.1 阶乘 28
2.1.2 斐波那契数列 30
2.2 动态规划 32
2.2.1 斐波那契数列 33
2.2.2  长公共子序列 36
第3章 树 45
3.1 二叉树 46
3.1.1  二叉树 47
3.1.2 满二叉树 48
3.1.3 平衡二叉树 48
3.2 二叉搜索树 49
3.2.1 性质 49
3.2.2 插入操作 50
3.2.3 插入顺序性 51
3.2.4 查找操作 53
3.2.5 中序前驱节点 54
3.2.6 中序后继节点 56
3.2.7 删除操作 58
3.3 AVL树 61
3.3.1 性质 61
3.3.2 二叉搜索树的平衡 62
3.3.3 为什么要旋转 63
3.3.4 插入类型及旋转 63
3.3.5 插入操作 67
3.3.6 查找操作 68
3.3.7 删除操作 69
3.4 红黑树 71
3.4.1 性质 71
3.4.2 旋转和变色 72
3.4.3 插入操作 72
3.4.4 查找操作 79
3.4.5 删除操作 80
3.5 2-3树 86
3.5.1 性质 86
3.5.2 插入操作 87
3.5.3 查找操作 89
3.5.4 删除操作 91
3.6 B树 98
3.6.1 性质 98
3.6.2 插入操作 99
3.6.3 查找操作 102
3.6.4 删除操作 102
3.7 Trie树 109
3.7.1 性质 109
3.7.2 插入操作 109
3.7.3 查找操作 111
3.7.4 删除操作 113
第4章 堆 117
4.1 二叉堆 117
4.1.1 二叉堆的性质 117
4.1.2 二叉堆的实现 118
4.1.3 二叉堆的作用 118
4.1.4 插入操作 118
4.1.5 删除操作 121
4.1.6 构建操作 123
4.2 二项堆 125
4.2.1 结构与性质 125
4.2.2 插入与合并 126
4.2.3 查找 大(小)值 129
4.2.4 删除 大(小)值 131
4.3 斐波那契堆 133
4.3.1 结构及性质 133
4.3.2 斐波那契数列 134
4.3.3 插入操作 135
4.3.4 获取 小节点 136
4.3.5 合并两个斐波那
契堆 136
4.3.6 删除 小键
值节点 136
4.3.7 减小节点键值 139
4.3.8 删除节点 142
第5章 图 143
5.1 图的表示方式 144
5.2 图的遍历 145
5.2.1 广度优先搜索 146
5.2.2 深度优先搜索 151
5.3 图的 短路径 158
5.3.1 Dijkstra算法 158
5.3.2 Floyd算法 166
5.4  小生成树 177
5.4.1 Prim算法 178
5.4.2 并查集 185
5.4.3 Kruskal算法 190
第6章 比较排序 196
6.1 选择排序 196
6.1.1 排序要点 196
6.1.2 排序性能 197
6.1.3 排序过程 197
6.1.4 稳定性 199
6.2 冒泡排序 200
6.2.1 排序要点 201
6.2.2 排序性能 201
6.2.3 排序过程 201
6.3 插入排序 203
6.3.1 排序要点 203
6.3.2 排序性能 204
6.3.3 排序过程 204
6.4 快速排序 207
6.4.1 排序要点 207
6.4.2 排序性能 207
6.4.3 排序过程 208
6.5 希尔排序 213
6.5.1 排序要点 214
6.5.2 排序性能 214
6.5.3 排序过程 214
6.6 合并排序 219
6.6.1 排序要点 220
6.6.2 排序性能 220
6.6.3 排序过程 220
6.7 堆排序 230
6.7.1 排序要点 230
6.7.2 排序性能 231
6.7.3 排序过程 231
第7章 非比较排序 236
7.1 计数排序 236
7.1.1 不考虑稳定性的
情况 236
7.1.2 考虑稳定性的情况 239
7.1.3 计数排序的局限 247
7.2 基数排序 247
7.2.1 排序性能 247
7.2.2 排序方式 247
7.2.3 基于计数排序的
实现 248
7.2.4 基于桶的实现 253
7.2.5 MSD排序方式 257
7.3 桶排序 260
7.3.1 排序性能 260
7.3.2 排序要点 261
7.3.3 桶的区间 261
7.3.4 排序过程 261
· · · · · ·