TODO - RogerRordo/ACM GitHub Wiki
- 二分/
 - 排序
- 快排
 - 堆排
 - 计数排序
 - 基数排序
 - 桶排
 
 - 搜索
- DFS/
 - BFS
- 普通BFS/
 - 双向BFS
 
 - 记忆化搜索
 - 启发式搜索
- 爬山算法
 - 模拟退火
 - 蚁群算法
 - 遗传算法
 
 
 - DP
- 背包(九讲)
- 01背包
 - 完全背包
 - 多重背包
 - 混合背包(前三种)
 - 二维费用背包
 - 分组背包
 - 有依赖的背包
 
 - 最长不下降子序列
 - 最长公共子序列/
 - 插头DP
 - 树形DP/
 - 矩阵乘法优化
 - 四边形不等式优化
 - 单调队列优化
 - 斜率优化
 
 - 背包(九讲)
 - 图
- 拓扑排序 
O(V+E) - 割点和桥
 - 图的同构
 - 最短路
- Dijkstra
- Dijkstra 
O(V^2 +E) - Dijkstra+堆 
O(ElogE +V) 
 - Dijkstra 
 - Floyd 
O(V^3 +E) - SPFA
- SPFA 
O(VE +V^2)=O(kE) - SPFA+SLF+LLL 
O(VE +V^2)=O(kE) 
 - SPFA 
 - 差分约束系统
 - 第k短路
 
 - Dijkstra
 - 欧拉回路
- 普通欧拉回路
 - 混合图欧拉回路_iSAP
 
 - 哈密顿回路
 - 匹配
- 二分图匹配
- 最大匹配_匈牙利 
O(VE) - 最大匹配_HK
 - 最优匹配_KM
 
 - 最大匹配_匈牙利 
 - 一般图匹配
- 带花树开花
 
 
 - 二分图匹配
 - 强连通分量_Tarjan 
O(V+E) - 2-SAT
 - 网络流
- 最大流
- Ford-Fulkerson
 - Edmonds Karp
 - iSAP
- iSAP有BFS非递归+gap+cur 
O(V^2*E) - iSAP无BFS递归+gap+cur 
O(V^2*E) 
 - iSAP有BFS非递归+gap+cur 
 - Dinic
 
 - 费用流
- 普通费用流
 - ZKW费用流
 
 - 上下界网络流
 - 无向图最小割
- Stoer-Wagner
 
 
 - 最大流
 - 完美消除序列
 - 弦图判定
 - 最大团
 - 极大团计数
 - 01分数规划
 
 - 拓扑排序 
 - 树
 - 字符串
- 字符串Hash
 - KMP
 - 扩展KMP
 - 环串的最小表示
 - 后缀数组
 - 最长重复字串
 - 最长公共子串
 - 最长回文子串_Manacher
 - 多模匹配_AC自动机 
O(∑P_i+T) - 后缀自动机
 
 - 高级数据结构
- 块状链表
 - 并查集
 - 堆
- 二叉堆
- 手写二叉堆
 
 - 斐波那契堆
 - 左偏树
 - 配对堆
 
 - 二叉堆
 - 树状数组
- 区间和改点求段_树状数组 
O(NlogN+QlogN) - 区间和改段求点_树状数组 
O(NlogN+QlogN) - 区间和改段求段_树状数组
 - 二维树状数组
 
 - 区间和改点求段_树状数组 
 - 线段树
- 区间和_线段树 
O(NlogN+QlogN) 
 - 区间和_线段树 
 - 平衡树
- 二项堆
 - 平衡树
 - Treap
 - SBT
 - Splay树
 
 - 动态树
 - 后缀树
 - k-d Tree
 - 复合数据结构
- 区间k大无修改_主席树 
O(NlogN+QlogN) - 区间k大有修改_树状数组套主席树
 - 线段树套线段树
 - 线段树套平衡树
 - 平衡树套线段树
 
 - 区间k大无修改_主席树 
 
 - 数学
 - 几何
- 最小圆覆盖 
O(N) - 半平面交
 - 三维凸包
 - 曼哈顿凸包
 - pick定理
 - 最小矩形覆盖
 - 圆的面积并
 - 多边形的面积并
 - 多边形的核
 
 - 最小圆覆盖 
 - 博弈
 - 其他
- 莫队
 - 斐波那契进制转换
 - 幻方构造
 - N皇后构造
 - 骑士周游
 - 最大子矩阵和
 - 矩形切割
 - CDQ分治
 - 开栈