-
[√]是会的,[√*]是会大概/一半的
-
基础算法
- 贪心[√]、枚举[√]、分治[√]、二分[√]、倍增[√]、*构造、高精[√]、模拟[√]
-
图论
- 图
- 最短路(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,*朱刘算法