章整理下背包1
1.1桶排序2
1.2冒泡排序8
1.3快速排序15
1.4时间和空间复杂度20
第2章开始闯关吧22
2.1忘记密码了——穷举算法23
2.2汉诺塔——递归算法25
2.3八皇后——回溯算法31
2.4分装备——贪心算法41
2.5二分查找——分治算法45
第3章爆满的服务器与背包53
3.1服务器爆满——队列54
3.2合成宝石——优先队列61
3.3背包里的道具——栈65
3.4十进制转任意进制74
第4章点亮技能树77
4.1树78
4.1.1树的定义79
4.1.2树的相关术语80
4.2二叉树83
4.2.1二叉树性质84
4.2.2特殊的二叉树85
4.2.3二叉树的遍历87
4.2.4二叉树的存储结构105
4.3堆107
4.3.1大根堆与小根堆107
4.3.2堆的操作109
4.4堆排序132
第5章爆装备啦,快来捡139
5.1捡到完美的海螺——递推算法140
5.201背包——动规算法143
5.3完全背包——动规算法148
5.4多重背包——动规算法152
第6章迷宫156
6.1图的概念157
6.1.1图的定义158
6.1.2图的存储结构162
6.2图的遍历167
6.2.1深度优先搜索法168
6.2.2广度优先搜索法172
6.3并查集176
6.3.1分析177
6.3.2并查集的原理179
6.3.3并查集的操作180
6.4最小生成树186
6.4.1Prim算法187
6.4.2Kruskal算法192
第7章探索地图每个角落197
7.1深度优先搜索198
7.2广度优先搜索211
第8章快逃命去吧229
8.1拓扑排序230
8.2最短路径240
8.2.1Floyd算法240
8.2.2Dijkstra算法250
8.2.3Bellman-Ford算法255
8.2.4SPFA算法261