【推荐语】
一本算法竞赛大全,深入解析算法专题、数据结构、模板代码。10个专题,330个知识点,102个章节讲解。本书解析了算法竞赛考核的数据结构、算法;组织了每个知识点的理论解析和经典例题;给出了简洁精要的模板代码;通过明快清晰的文字、透彻的图解,实现了较好的易读。
【目录】
第1章基础数据结构
1.1链表
1.1.1动态链表
1.1.2静态链表
1.1.3STL;list
1.2队列
1.2.1STL;queue
1.2.2手写循环队列
1.2.3双端队列和单调队列
1.2.4先队列
1.3栈
1.3.1STL;stack
1.3.2手写栈
1.3.3单调栈
1.4二树和哈夫曼树
1.4.1二树的概念
1.4.2二树的遍历
1.4.3哈夫曼树和哈夫曼编码
1.5堆
1.5.1二堆的概念
1.5.2二堆的作
1.5.3写代码
1.5.4堆和priority_queue
小结
第2章基本算法
2.1算法复杂度
2.1.1算法的概念
2.1.2复杂度和大O记号
2.2尺取法
2.2.1尺取法的概念
2.2.2反向扫描
2.2.3同向扫描
2.3二分法
2.3.1二分背景
2.3.2整数二分
2.3.3实数二分
2.4三分法
2.4.1原理
2.4.2实数三分
2.4.3整数三分
2.5倍增法与ST算法
2.5.1倍增法
2.5.2ST算法
2.6前缀和与差分
2.6.1维差分
2.6.2二维差分
2.6.3三维差分
2.7离散化
2.7.1离散化的概念
2.7.2离散化手工编码
2.7.3用STL函数实现离散化
2.7.4离散化的应用
2.8排序与排列
2.8.1排序函数
2.8.2排列
2.9分治法
2.9.1汉诺塔和快速幂
2.9.2归并排序
2.9.3快速排序
2.10贪法与拟阵
2.10.1贪法
2.10.2拟阵
小结
第3章搜索
3.1BFS和DFS基础
3.1.1搜索简介
3.1.2搜索算法的基本思路
3.1.3BFS的代码实现
3.1.4DFS的常见作和代码框架
3.1.5BFS和DFS的对比
3.1.6连通判断
3.2剪枝
3.2.1BFS判重
3.2.2剪枝的应用
3.3洪水填充
3.4BFS与短路径
3.5双向广搜
3.5.1双向广搜的原理和复杂度分析
3.5.2双向广搜的两种实现
3.5.3双向广搜例题
3.6BFS与先队列
3.7BFS与双端队列
3.8A*算法
3.8.1贪搜索和Dijkstra算法
3.8.2A*算法的原理和复杂度
3.8.33种算法的对比
3.8.4h函数的设计
3.8.*算法例题
3.9IDDFS和IDA*
3.9.1IDDFS
3.9.2IDA*
小结
第4章数据结构
4.1并查集
4.1.1并查集的基本作
4.1.2合并的化
4.1.3查询的化(路径压缩)
4.1.4带权并查集
4.2树状数组
4.2.1树状数组的概念和基本编码
4.2.2树状数组的基本应用
4.2.3树状数组的扩展应用
4.3线段树
4.3.1线段树的概念
4.3.2区间查询
4.3.3区间作与LazyTag
4.3.4线段树的基础应用
4.3.5区间值和区间值
4.3.6区间合并
4.3.7扫描线
……
【书摘插画】
返回顶部