加*號是選學,加粗爲重點,重要值排序不分先後
-
基礎算法
- 貪心、枚舉、分治、二分、倍增、*構造、高精、模擬
-
圖論
- 圖
- 最短路(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。所以儘量花時間在別的地方吧。