信息学最全知识点清单

信息学竞赛知识清单

基本说明:带*表示省选掌握知识,带**表示较难省选知识,带!表示较偏门知识

文章目录

一、基础知识

1、STL,参见百科STL总结

  • set(multiset)、map(multimap)、deque、vector、queue、stack、priority_queue、list、bitset
  • 算法:sort、nth_element、lower_bound、upper_bound、unique、reverse、random_shufle

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积分

十、其他算法

[ ] 打表法

[ ]遗传算法!

  • 5
    点赞
  • 34
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值