算法模板整理 分类 算法 模板代码及文档 示例代码或博客 数据结构 一维树状数组 FenwickTree FenwickTree.cpp 二维树状数组 FenwickTree2D FenwickTree2D.cpp 区间修改,单点查询树状数组 RangeAddTree RangeAddTree.cpp 区间修改,区间查询树状数组 RangeSumTree RangeSumTree.cpp ST 表 ST Table ST Table 线段树 SegmentTree 线段树 懒标记线段树 LazySegmentTree LazySegTree.cpp 字符串字典树 字符串字典树 字符串字典树 01字典树/可持久化01字典树 01字典树 异或与字典树 最大最小堆 最大最小堆 最大最小堆 斜堆 斜堆 斜堆 小波矩阵 小波矩阵 小波矩阵 segment-tree-beats segment-tree-beats segment-tree-beats 字符串 字符串哈希 字符串哈希 StringHash.cpp manacher算法 manacher算法 manacher算法 kmp算法 kmp算法 kmp算法 z_function z_function z_function 后缀数组 后缀数组 后缀数组 回文树/回文自动机 回文自动机 回文自动机 后缀自动机 后缀自动机 后缀自动机 lyndon分解 lyndon分解 lyndon分解 最小表示法 最小表示法 最小表示法 图论 Dijkstra最短路 Dijkstra最短路 Dijkstra最短路 01bfs 01bfs 01bfs 二分图判定 二分图判定 二分图判定 二分图匹配 二分图匹配 二分图匹配 强连通分量 强连通分量 强连通分量 无向图的桥与边双连通分量 无向图的桥与边双连通分量 无向图的桥与边双连通分量 无向图的割点与点双连通分量 无向图的割点与点双连通分量 无向图的割点与点双连通分量 spfa找负环 spfa找负环 spfa找负环 差分约束问题 差分约束问题 差分约束问题 最小生成树 最小生成树 最小生成树 最短路径树 最短路径树 最短路径树 k短路 k短路 k短路 最大网络流 最大网络流 最大网络流 最小费用流 最小费用流 最小费用流 数学/数论 modint modint modint 数论 数论 数论 矩阵快速幂 矩阵快速幂 矩阵快速幂 容斥原理 容斥原理 容斥原理 排列组合 排列组合 排列组合 快速沃尔什变换 快速沃尔什变换 快速沃尔什变换 高精度运算 高精度运算 高精度运算 树上算法 最近公共祖先(LCA) 最近公共祖先(LCA) 最近公共祖先(LCA) 带权LCA 带权LCA 带权LCA 树的直径 树的直径 树的直径 树链剖分 树链剖分 树链剖分 点分治 点分治 点分治 点分树 点分树 点分树 树哈希 树哈希 树哈希 位运算 bitset bitset bitset 位运算 位运算 位运算 异或线形基 异或线形基 异或线形基 子集卷积 子集卷积 子集卷积 常用算法 并查集 并查集 并查集 二分算法 二分算法 二分算法 二维前缀和 二维前缀和 二维前缀和 二维差分 二维差分 二维差分 单调栈 单调栈 单调栈 单调队列 单调队列 单调队列 维护区间(交/并) 维护区间(交/并) 维护区间(交/并) 杂项 莫队 莫队 莫队 树上莫队 树上莫队 树上莫队 数组离散化 数组离散化 数组离散化 在线前缀最值 在线前缀最值 在线前缀最值 数组哈希 数组哈希 数组哈希 动态mex 动态mex 动态mex 辅助工具 辅助工具 辅助工具 高维数组 高维数组 高维数组