【个人网络整理】NOIP / 省选 /NOI 知识点汇总
NOIP 知识点汇总
加 * 号是选学,加粗为重点,重要值排序不分先后
一、基础算法
- 贪心
- 枚举
- 分治
- 二分
- 倍增
- *构造
- 高精
- 模拟
二、图论
图
- 最短路(dijkstra、spfa、floyd)
- 差分约束
- 最小生成树(kruskal、prim)
- 并查集(扩展域)
- 拓扑排序
- 二分图染色
- *二分图匹配
- tarjan 找 scc、桥、割点,缩点
- *分数规划
树
- 树上倍增(LCA)
- 树的直径、树的重心
- dfs 序
- *树链剖分
三、数论
- gcd、lcm
- 埃氏筛法
- exgcd,求解同余方程、逆元
- 快速幂
- *组合数学
- 矩阵
四、数据结构
- 链表
- 队列(单调队列)
- 栈(单调栈)
- 堆
- st 表
- hash 表
- 线段树
- 树状数组
- 字典树
- *分块
五、动态规划
- 背包 DP
- 树形 DP
- 记忆化搜索
- 递推
- 区间 DP
- 序列 DP
- *DP 优化(不涉及斜率优化、四边形不等式等)
六、搜索
- 暴搜(dfs、bfs)
- 搜索的剪枝
- 启发式搜索(A)*
- 迭代加深搜索
- IDA
- *随机化搜索
七、其他算法
- STL 的基本使用方法
- 脑洞的正确使用方法
- *KMP
- *状态压缩
省选知识点汇总
冲省选的,先把整理的 NOIP 知识点学扎实,注意一定要学扎实。
加粗是重点,星号是选学。
学无止境,欢迎大家继续补充~
一、图论
- 网络流(dinic,SAP,ISAP 选一个,费用流写 EK 就行,*zkw 费用流)
- 二分图
- 点分治
- 边分治
- *动态点分治
- 树链剖分
- 动态树
- 树分块
- 虚树
- *prufer 编码
- *仙人掌算法
二、数据结构
- 带权并查集
- Splay(作为平衡树和维护区间)
- Treap
- 替罪羊树
- 线段树(权值线段树)
- 树状数组
- *线段树合并
- 分块
- 块状链表
- *双向链表
- 凸包
- 树套树
- 主席树
- 可持久化 trie
- *其它可持久化数据结构
- 莫队算法
- *树上莫队
- CDQ 分治
- 整体二分
- 二维线段树
- *KDtree
- *舞蹈链
- *二进制分组
- *左偏树
- *超哥线段树
- *后缀平衡树
- *fhqTreap
三、字符串相关算法及数据结构
- hash(自然溢出,双 hash)
- kmp
- AC 自动机
- trie
- 后缀数组
- manacher
- 最小表示法
- *后缀自动机
- *回文自动机
- *后缀树
四、数学
- 线性筛
- 积性函数
- 容斥原理
- 莫比乌斯反演
- exgcd
- 费马小定理
- Lucas 定理
- 高中排列组合
- 高斯消元
- 概率与期望相关
- 中国剩余定理
- BSGS
- 欧拉定理
- 矩阵乘法
- 单纯形法解线性规划
- FFT
- 线性代数(行列式)
- *Simpson 积分
- 高中求导与积分
- *群论
- *生成函数,多项式类算法
- 博弈论相关
- *密码学,阶,原根
五、计算几何
- 向量的点积/叉积
- 计算几何基础
- *二维计算几何相关
- *三维计算几何相关
- *半平面交
- *旋转卡壳
- *三角剖分
六、搜索
- A*
- 记忆化搜索
- 迭代深搜
- 双向广搜
- 模拟退火
- 爬山算法
- *随机增量法
七、动态规划
- 基础 DP
- 树形 DP
- 数位 DP
- 状压 DP
- 期望 DP
- 基环树 DP
- *插头 DP
- 斜率优化
- 矩乘优化
- 单调队列优化
- 倍增优化
- *四边形不等式优化
- trie 图 DP
- *仙人掌 DP
八、其他算法
- 构造
- 乱搞
- 随机化
- 三分法
- 打表
- 启发式合并
- Huffman 树
- 2-sat
- *朱刘算法
说真的,计算几何要么全场不会,要么全场 AK。所以尽量花时间在别的地方吧。