动态规划 #
背包DP: #
\(0-1\) 背包
完全背包
多重背包
二进制分组
单调队列优化
混合背包
分组背包
区间DP
树形DP: #
树上背包
换根
状压DP
数位DP
动态DP
DP优化: #
单调队列/单调栈优化
斜率优化
四边形不等式
DS优化
数学 #
斐波那契数列
杨辉三角
数论: #
欧拉筛 & 埃氏筛
Miller-Rabin & Pollard Rho
扩展欧几里得法(Ex gcd)
数论分块
裴蜀定理
欧拉定理
费马小定理
中国剩余定理
Lucas 定理
莫比乌斯反演
线性规划: #
高斯消元
线性基
矩阵乘法
组合数学: #
排列组合
第二类斯特林数
抽屉原理
康托展开
容斥原理
博弈论: #
Nim 博弈
SG 函数
牛顿迭代法
分段打表
图论 #
拓扑排序
最短路 & 次短路 & k短路
最小生成树
差分约束
Tarjan:
强连通分量
缩点
点双 &边双
割点 & 割边
2-SAT
网络流: #
最大流 & 最小割 &Dinic
最小费用最大流
黑白染色
图的匹配: #
二分图最大匹配 & 二分图最大权匹配
一般图最大匹配 & 一般图最大权匹配
树: #
树的直径
树的重心
LCA
树链剖分
Dsu on Tree(树上启发式合并)
树哈希
树分治
数据结构(基础的不计) #
并查集
堆
单调栈 & 单调队列
分块 & 块状链表
ST表
树状数组
线段树: #
主席树
线段树分裂
线段树合并
线段树分治
线段树上二分
李超线段树
吉司机线段树
平衡树
珂朵莉树
笛卡尔树
字符串 #
最小表示法
哈希
KMP
Trie
Z函数
AC自动机
失配树
Manacher
基础 #
搜索: #
双向搜索 & Meet in the middle
A*
迭代加深
IDA*
Minimax算法 & $ \alpha - \beta $ 剪枝
贪心
排序(sort)
二分
倍增
分治
离散化
杂 #
摩尔投票
双指针