文章目录 信息学竞赛知识清单一、基础知识1、STL,参见百科STL总结2、常见技巧 二、基础算法1、递归(输出方案)、枚举(优化)[ ] 2、高精度3、分治[ ] 二分答案[ ] 排序算法[ ] cdq分治*、整体二分[ ] 树分治(点分治、边分治!、链分治*)[ ] 动态点分治* 4、贪心[ ] 常见贪心[ ] 随机化贪心! [ ] 5、倍增法[ ] 6、双指针7、模拟[ ] 约瑟夫问题[ ] 模拟退火! [ ] 8、搜索[ ] dfs、bfs[ ] 剪枝:折半搜索、可行剪枝、最优化剪枝[ ] 双向搜索、A* 搜索、迭代加深、IDA* 三、动态规划[ ] 1、背包类dp[ ] 2、LIS,LCS、编辑距离[ ] 3、区间dp[ ] 4、最大字段和[ ] 5、最大子矩阵、悬线法[ ] 6、树形DP[ ] 树上背包问题[ ] 树的直径、重心[ ] 换根法[ ] 其他延展 [ ] 7、数位dp[ ] 8、状压dp[ ] 9、计数类DP[ ] 10、概率与期望 [ ] 11、插头/轮廓线(*)12、DP优化[ ] 单调队列优化[ ] 数据结构优化[ ] 斜率优化[ ] 四边形不等式优化(*) 四、图论[ ] 1、图论基础[ ] 图的储存(矩阵、前向星、vector、边目录)[ ] 图的遍历(DFS/BFS) [ ] 2、欧拉路[ ] 3、最短路[ ] floyd及应用[ ] dijkstra、spfa[ ] 次短路、最短路计数等应用[ ] 差分约束 4、生成树[ ] 最小生成树(prime、kruskal)[ ] 次小生成树、度限制生成树(*)[ ] 生成树计数(*)[ ] 最小树形图(*)[ ] 最优比例生成树[ ] kruskal重构树(*)[ ] Steiner Tree* 5、连通性问题[ ] 割点割桥、边/点双连通[ ] 有向图强连通(tarjan\korasaju)[ ] 2-SAT[ ] 最小点基* 6、拓扑排序[ ] 拓扑上dp[ ] 拓扑序字典序 7、二分图匹配[ ] 匈牙利算法[ ] 常见匹配问题及转换[ ] 带权最优匹配 8、网络流*[ ] 最大流算法(dinic\isap\HLPP(**))[ ] 最小割[ ] 费用流[ ] 常见问题[ ] 网络流解决二分图问题[ ] 上下界可行流、费用流[ ]最大权闭合子图、最大密度子图[ ] 混合图欧拉回路[ ] 平面图 [ ]9、支配树*[ ] 10、分数规划*[ ] 11、基环树、仙人掌图*[ ]基环树[ ] 仙人掌图问题、圆方树* [ ] 12、弦图** 五、数据结构1、线性数据结构[ ] 队列与栈[ ] 单调队列栈[ ] 哈希表[ ] 链表[ ] 跳跃表 * 、跳舞链 * 、块状链表* 2、并查集[ ] 路径压缩、按秩合并[ ] 权值并查集 3、树论[ ] 树与二叉树基本概念[ ] 堆[ ] 二叉堆、优先队列(STL)[ ] 可并堆 [ ] LCA(倍增法、欧拉序+ST表、离线tarjan)[ ] 树状数组[ ] 线段树、权值线段树[ ] 线段树启发式合并* [ ] 平衡树*[ ] treap、笛卡尔树[ ] splay[ ] 替罪羊[ ] 非旋treap[ ] 胜者树 [x ] 树上信息维护[ ] 树链剖分[ ] 重轻链剖分[ ] 长链剖分*[ ] dfs序、树上差分 [ ] 可持久化[ ] 可持久化链表[ ] 主席树[ ] 可持久化treap*[ ]可持久化trie* [ ] 树套树*[ ] 虚树 [ ] 六、根号算法[ ] 1、分块[ ] 2、莫队算法[ ]3、树上莫队*[ ] 4、树分块 七、字符串算法[ ] 1、kmp[ ] 2、trie[ ] 3、AC自动机*[ ] 4、manacher(马拉车)[ ] 5、后缀数组*[ ]6、后缀自动机*[ ] 7、回文自动机 八、数学[ ]1、数论[ ]逆元[ ] gcd、exGCD[ ] 筛法[ ] 埃氏筛[ ]线性筛[ ]杜教筛*[ ] min_25和洲阁筛*[ ]素数相关[ ] 费马小定理及其用途[ ]欧拉定理[ ]Miller-Rabin判断素数*[ ]Pollard-Rho* [ ] 同余问题[ ]同余方程求解[ ]中国剩余定理、excrt[ ] 二次剩余*[ ]BSGS\exBSGS*[ ]n次剩余* [ ]积性函数*[ ] 迪尼克卷积[ ] 莫比乌斯反演 [ ] 2、组合数学[ ]计数原理[ ] 排列与组合[ ]组合数取模、lucas*、exlucas* [ ] 鸽笼原理[ ] 容斥原理[ ] 生成函数*[ ] 常见递推式[ ]catalan数[ ]stirling数 [ ] 3、群论[ ]置换群[ ]拟阵[ ]polya定理 [ ] 4、矩阵[ ] 矩阵基本运算[ ]矩阵快速幂[ ]高斯消元[ ]Matrix-Tree定理* [ ] 5、博弈论[ ]6、微积分初步*[ ]7、多项式[ ] FFT\NTT[ ]fwt\fmt[ ]拉格朗日插值 [ ]8、线性规划* 九、计算几何*[ ] 点线、矢量等基本运算[ ]凸包[ ] 半平面交[ ] 离散化扫描法[ ] 旋转卡壳[ ] 动态凸包[ ]圆与球的相关计算[ ]三维计算几何[ ]多边形[ ] Simpson积分 十、其他算法[ ] 打表法[ ]遗传算法!