2018-team4-modules-index
从 Trac 迁移的文章
这是从旧校内 Wiki 迁移的文章,可能存在一些样式问题,您可以向 memset0 反馈。
原文章内容如下:
1. 动态规划
2. 莫队算法
3. 数据结构
* 3.1 Hash (HDU p16 字符串、矩阵Hash)
* 3.2 [wiki:2018-team4-modules-ST ST] 无修改的区间最大值查询
* 3.3 [wiki:2018-team4-modules-左偏树 左偏树] 可以合并的堆
* 3.4 平衡树
* 3.4.1 [wiki:2018-team4-modules-Treap Treap]
* 3.4.2 [wiki:2018-team4-modules-非旋Treap 非旋Treap]
* 3.4.3 [wiki:2018-team4-modules-替罪羊树 替罪羊树] 达到一定条件后重建子树
* 3.5 线段树
* 3.5.1 [wiki:2018-team4-modules-普通线段树 普通线段树] 区间操作最大、求和
* 3.5.2 [wiki:2018-team4-modules-可持久化线段树 可持久化线段树] 区间修改,区间查询
* 3.5.3 [wiki:2018-team4-modules-线段树合并 线段树合并]
* 3.6 [wiki:2018-team4-modules-树链剖分 树链剖分]树链剖分
* 3.7 [wiki:2018-team4-modules-Splay Splay]
* 3.8 [wiki:2018-team4-modules-LCT LCT] link-cut-tree
* 3.9 TopTree (HDU P.20) 在LCT的基础上可以进行子树修改与查询
* 3.10 [wiki:2018-team4-modules-并查集 并查集]
* 3.10.1 可持久化并查集 (ZJU P.24) 可查询历史版本
* 3.11 [wiki:2018-team4-modules-KDTree KDTree] 平面最远/最近点、k远点、二维区间权和
4. 树
* 4.1 生成树
* 4.1.1 最小生成树
* 4.1.2 [wiki:2018-team4-modules-最小方差生成树 最小方差生成树]
* 4.1.3 [wiki:2018-team4-modules-生成树计数 生成树计数](矩阵树定理)
* 4.2 [wiki:2018-team4-modules-支配树 支配树]
* 4.3 [wiki:2018-team4-modules-虚树 虚树]
* 4.4 [wiki:2018-team4-modules-点分治 点分治]
* 4.5 树上倍增lca
5. 图
* 5.1 最短路
* 5.1.1 dijkstra
* 5.1.2 SPFA
* 5.2 有环图
* 5.2.1 [wiki:2018-team4-modules-有向图极大强连通分量(Tarjan) 有向图极大强连通分量(Tarjan)]
* 5.2.2 [wiki:2018-team4-modules-有向图极大强连通分量(Kosaraju) 有向图极大强连通分量(Kosaraju)]
* 5.2.3 点双联通分量
* 5.2.4 边双联通分量
* 5.2.5 [wiki:2018-team4-modules-割点 割点]
* 5.2.6 桥
* 5.3 匈牙利算法
* 5.4 [wiki:2018-team4-modules-完美消除序列 完美消除序列]
* 5.5 网络流
* 5.5.1 [wiki:2018-team4-modules-最大流/最小割 最大流/最小割]
* 5.5.2 [wiki:2018-team4-modules-费用流 最小/大费用最大流]
* 5.5.3 [wiki:2018-team4-modules-最大费用可行流 最大费用可行流]
* 5.5.4 [wiki:2018-team4-modules-无原汇上下界可行流 无原汇上下界可行流]
* 5.5.5 [wiki:2018-team4-modules-有原汇上下界费用流 有原汇上下界费用流]
* 5.6 [wiki:2018-team4-modules-一般图最大匹配 一般图最大匹配]
* 5.7 2-SAT
* 5.7.1 判定是否存在解
* 5.7.2 求任意一组解
* 5.7.3 [wiki:2018-team4-modules-求字典序最小解 求字典序最小解]
* 5.8 [wiki:2018-team4-modules-查分约束系统 查分约束系统]
* 5.9 [wiki:2018-team4-modules-Hall定理 Hall定理]
* 5.10 最小树形图
* 5.11[http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%9B%BE%E8%AE%BA_%E5%8C%B9%E9%85%8D%2F%E4%BA%8C%E5%88%86%E5%9B%BE%E6%9C%80%E4%BD%B3%E5%8C%B9%E9%85%8D%28kuhn_munkras%E9%82%BB%E6%8E%A5%E9%98%B5%E5%BD%A2%E5%BC%8F%29.cpp 二分图最佳匹配 KM算法]
6. 博弈论
7. 数学
* 7.1 [wiki:2018-team4-modules-线性递推逆元 线性递推逆元]
* 7.2 [wiki:2018-team4-modules-线性筛质数 线性筛质数]
* 7.3 组合数取模
* 7.1.1 [wiki:2018-team4-modules-Lucas定理 Lucas定理]
* 7.1.2 P是质数的幂
* 7.4 中国剩余定理
* 7.5 高斯消元
* 7.5.1 线性方程求解
* 7.5.2 行列式
* 7.6 康托展开
* 7.7 线性基
* 7.8 多项式
* 7.8.1 快速傅里叶变换(FFT)
* 7.8.2 快速数论变换1(NTT)
* 7.8.3 [wiki:2018-team4-modules-快速数论变换2(NTT) 快速数论变换2(NTT)]
* 7.8.4 多项式求幂
* 7.8.5 多项式求exp
* 7.8.6 多项式求逆元
* 7.8.7 拉格朗日反演
* 7.9 二项式反演
* 7.10 数列
* 7.10.1 [wiki:2018-team4-modules/BM Berlekamp-Massey]给前n项求递推式
* 7.11 [wiki:2018-team4-modules-拉格朗日插值 拉格朗日插值]
8. 字符串匹配
* 8.1 [wiki:2018-team4-modules-kmp kmp]
* 8.2 [wiki:2018-team4-modules-AC自动机 AC自动机]
* 8.3 [wiki:2018-team4-modules-Trie Trie]
* 8.4 自动机
* 8.4.1 [wiki:2018-team4-modules-后缀自动机 后缀自动机]
* 8.4.2 [wiki:2018-team4-modules-回文自动机 回文自动机]
* 8.5 [wiki:2018-team4-modules-后缀数组 后缀数组]
9. 随机化
10. 计算几何
* 10.1 [http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%87%A0%E4%BD%95%2Fgeo.cpp geo2d] (ZJU p19) 码短易用c风格,有线段和多边形、凸包相关的大多数东西以及多边形切割、圆与线段交、费马点
* 10.2 [http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%87%A0%E4%BD%95%2Fgeo3d.cpp geo3d] (ZJU p24) 风格同上,3d版本,主要是线段点和平面,比[http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%87%A0%E4%BD%95%2F%E4%B8%89%E7%BB%B4%E5%87%A0%E4%BD%95.cpp P28]要好用
* 10.3 [http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%87%A0%E4%BD%95%2Fgeo%28%E7%8C%9B%E7%8A%B8%E4%B9%9F%E9%92%BB%E5%9C%B0%29.cpp geo猛犸] (ZJU p7) 相对cpp一点,处理圆比较方便,有内接外切最小圆覆盖;~~三维凸包simple~~;
* 10.4 geoHDU (HDU p89) 二次方程,旋转,多边形交圆
* 10.5 几何公式 (ZJU p5)
* 10.6 半平面交 (HDU p84)
* 10.7 三维凸包pro (HDU p86) 你甚至可以求表面积体积重心
* 10.8 [http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%87%A0%E4%BD%95%2F%E4%BB%BB%E6%84%8F%E7%BB%B4%E7%A9%BA%E9%97%B4%E6%9C%80%E8%BF%91%E7%82%B9%E5%AF%B9.cpp 任意维空间最近点对] (ZJU p38)
* 10.9 [http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%87%A0%E4%BD%95%2F%E7%BD%91%E6%A0%BC%28pick%29.cpp 网格(pick)] (ZJU p45)
* 10.10 [http://10.71.10.90:81/svn/filedetails.php?repname=acmsvn&path=%2Fmodule%2F%E5%87%A0%E4%BD%95%2F%E5%9C%86%E5%B9%B6.cpp K圆并] (ZJU p42 ~~HDU p93~~)
* 10.11 曼哈顿(空间下的)凸包 (HDU p93)
* 10.12 平面图求域及点定位 (HDU p94)
* 10.13 Farmland (给一个平面图,找边数为k且内部不包含其他点的简单多边形的个数)待写
* 10.14 [wiki:2018-team4-modules-旋转卡壳 旋转卡壳]
11. 黑科技与杂项
* 11.1 [wiki:2018-team4-modules-读入优化 读入优化]
* 11.2 输出优化
12. Java
1. 动态规划
2. 莫队算法
3. 数据结构
- 3.1 Hash (HDU p16 字符串、矩阵Hash)
- 3.2 ST 无修改的区间最大值查询
- 3.3 左偏树 可以合并的堆
- 3.4 平衡树
- 3.5 线段树
- 3.6 树链剖分树链剖分
- 3.7 Splay
- 3.8 LCT link-cut-tree
- 3.9 TopTree (HDU P.20) 在LCT的基础上可以进行子树修改与查询
- 3.10 并查集
- 3.10.1 可持久化并查集 (ZJU P.24) 可查询历史版本
- 3.11 KDTree 平面最远/最近点、k远点、二维区间权和
4. 树
5. 图
- 5.1 最短路
- 5.1.1 dijkstra
- 5.1.2 SPFA
- 5.2 有环图
- 5.2.1 有向图极大强连通分量(Tarjan)
- 5.2.2 有向图极大强连通分量(Kosaraju)
- 5.2.3 点双联通分量
- 5.2.4 边双联通分量
- 5.2.5 割点
- 5.2.6 桥
- 5.3 匈牙利算法
- 5.4 完美消除序列
- 5.5 网络流
- 5.6 一般图最大匹配
- 5.7 2-SAT
- 5.7.1 判定是否存在解
- 5.7.2 求任意一组解
- 5.7.3 求字典序最小解
- 5.8 查分约束系统
- 5.9 Hall定理
- 5.10 最小树形图
- 5.11二分图最佳匹配 KM算法
6. 博弈论
7. 数学
- 7.1 线性递推逆元
- 7.2 线性筛质数
- 7.3 组合数取模
- 7.1.1 Lucas定理
- 7.1.2 P是质数的幂
- 7.4 中国剩余定理
- 7.5 高斯消元
- 7.5.1 线性方程求解
- 7.5.2 行列式
- 7.6 康托展开
- 7.7 线性基
- 7.8 多项式
- 7.8.1 快速傅里叶变换(FFT)
- 7.8.2 快速数论变换1(NTT)
- 7.8.3 快速数论变换2(NTT)
- 7.8.4 多项式求幂
- 7.8.5 多项式求exp
- 7.8.6 多项式求逆元
- 7.8.7 拉格朗日反演
- 7.9 二项式反演
- 7.10 数列
- 7.10.1 Berlekamp-Massey给前n项求递推式
- 7.11 拉格朗日插值
8. 字符串匹配
9. 随机化
10. 计算几何
- 10.1 geo2d (ZJU p19) 码短易用c风格,有线段和多边形、凸包相关的大多数东西以及多边形切割、圆与线段交、费马点
- 10.2 geo3d (ZJU p24) 风格同上,3d版本,主要是线段点和平面,比P28要好用
- 10.3 geo猛犸 (ZJU p7) 相对cpp一点,处理圆比较方便,有内接外切最小圆覆盖;
三维凸包simple; - 10.4 geoHDU (HDU p89) 二次方程,旋转,多边形交圆
- 10.5 几何公式 (ZJU p5)
- 10.6 半平面交 (HDU p84)
- 10.7 三维凸包pro (HDU p86) 你甚至可以求表面积体积重心
- 10.8 任意维空间最近点对 (ZJU p38)
- 10.9 网格(pick) (ZJU p45)
- 10.10 K圆并 (ZJU p42
HDU p93) - 10.11 曼哈顿(空间下的)凸包 (HDU p93)
- 10.12 平面图求域及点定位 (HDU p94)
- 10.13 Farmland (给一个平面图,找边数为k且内部不包含其他点的简单多边形的个数)待写
- 10.14 旋转卡壳
11. 黑科技与杂项
- 11.1 读入优化
- 11.2 输出优化
12. Java