README
约 638 字大约 2 分钟
2025-03-13
目录
基础/杂项
- 快读快写
- 二分
- 三分
- 字符串与 int 等类型转换
- bitset
- 归并排序求逆序对数
- 结构体重载比较运算符
- 对顶堆
- vector 去重
- iota 生成连续数序列
- sort 中使用 lambda 编写排序规则
- 滑动窗口
- 双向广搜
- 单调栈
- 全排列函数 permutation
- 判断非递减 is_sorted
- cout 输出流控制
- 日期换算(基姆拉尔森公式)
- __int128_t
- 利用 auto + lambda + 引用捕获在内部编写递归函数
- 火车头卡常
- 三维前缀和
- std::__builtin_popcount
- std::mt19937 & std::shuffle 随机打乱
图论
- Floyd
- Bellman_Ford
- Dijkstra
- Kruskal
- prim
- 拓扑排序
- 同余最短路
- 传递闭包
- 最小环问题
- Johnson 求全源最短路
- 欧拉路
- 二分图匹配
- 欧拉回路
- 链式前向星
- 有向无环图 DAG
- 割边缩点
- tarjan 强连通分量&缩点
数据结构
- 并查集
- 树状数组
- 分块
- 主席树
- 替罪羊树
- 莫队
- ST 表
- 扫描线
树
- 树的直径
- 最近公共祖先 LCA
- 树的重心
线段树
- 封装区间加、区间最值查询
- 封装区间加、区间乘
- 区间赋值
- 单点赋值
- 快速线段树 单点修改+区间最值
- 区间取模
- 区间最大连续子段和
字符串
- manacher
- KMP
- 后缀自动机或后缀数组求不同的字串个数
- Z 函数(扩展 KMP)
- Trie 字典树
- AC 自动机
- AC 自动机优化加强
- 字符串哈希
- 回文自动机 PAM(回文树)
- 前后缀去重
动态规划
01 背包
完全背包
多重背包-二进制优化
单调队列优化背包
分组背包
有依赖背包
状压 DP
数位 DP
求最大子段和
数论
- 乘法取模
- 快速幂取模
- 矩阵乘法&快速幂
- GCD & LCM
- 扩展欧几里得
- 求解同余方程(求逆)
- 费马小定理
- Miller-Rabin 素性测试
- 欧拉筛
- 欧拉函数
- 二项式定理&卢卡斯定理
- Bash Game
- 素数筛 O(n)
- 分解质因数
- 约数
- 中国剩余定理 CRT
- 约瑟夫问题
- 线性判定排列逆序数的奇偶性
- 预处理组合数
- 防爆模乘
- jiangly 取模运算+组合数板子
组合数学
- 斯特林数
- 卡特兰数
- 错排公式
计算几何
- 点线多边形封装
- 基础数值计算
- 二维几何板子
- 三维几何板子
- 极角排序
- 距离
- 给定两矩形求重叠面积
高精度
- 高精度加减乘除