1. 程式人生 > >[轉]OI省選算法匯總

[轉]OI省選算法匯總

博弈論 割點 雙端隊列 快速 分塊 拓撲排序 樹上倍增 字符串 樹狀數組

簡單列了一點

1.1 基本數據結構

1. 數組

2. 鏈表,雙向鏈表

3. 隊列,單調隊列,雙端隊列

4. 棧,單調棧

1.2 中級數據結構

1. 堆

2. 並查集與帶權並查集

3. hash 表

自然溢出

雙hash

1.3 高級數據結構

1. 樹狀數組

2. 線段樹,線段樹合並

3. 平衡樹

Treap 隨機平衡二叉樹

Splay 伸展樹

* Scapegoat Tree 替罪羊樹

4. 塊狀數組,塊狀鏈表

5.* 樹套樹

線段樹套線段樹

線段樹套平衡樹

* 平衡樹套線段樹

6.可並堆

左偏樹

*配對堆

7. *KDtree,*四分樹

1.4 可持久化數據結構

1. 可持久化線段樹

主席樹

2. * 可持久化平衡樹

3. * 可持久化塊狀數組

1.5 字符串相關算法及數據結構

1. KMP

2. AC 自動機

3. 後綴數組

4. *後綴樹

5. *後綴自動機

6. 字典樹 Trie

7. manacher

1.6 圖論相關

1. 最小生成樹

prim

kruskal

2. 最短路,次短路,K短路

spfa

dijkstra

floyd

3. 圖的連通

連通分量

割點,割邊

4. 網絡流

最大流

最小割

費用流

分數規劃

5. 樹相關

樹上倍增,公共祖先

樹鏈剖分

樹的分治算法(點分治,邊分治,*動態?樹分治)

動態樹 (LCT,*樹分塊)

虛樹

*prufer編碼

7. 拓撲排序

8. 歐拉圖

9. 二分圖

*KM算法

匈牙利算法

1.7 數學相關

1. (擴展)歐幾裏得算法,篩法,快速冪

斐蜀定理

更相減損術

2. 歐拉函數與*降冪大法

3. 費馬小定理

4. 排列組合

lucas定理

5. 乘法逆元

6. 矩陣乘法

7. 數學期望與概率

8. 博弈論

sg函數

樹上刪邊遊戲

9. *拉格朗日乘子法

10. 中國剩余定理

11. 線性規劃與網絡流

12. 單純型線性規劃

13. 辛普森積分

14. 模線性方程組

15. 容斥原理與莫比烏斯反演

16. 置換群

17. 快速傅裏葉變換

18. *大步小步法(BSGS),擴展BSGS

1.8 動態規劃

1. 一般,背包,狀壓,區間,環形,樹形,數位動態規劃

記憶化搜索

斯坦納樹

背包九講

2. 斜率優化與* 四邊形不等式優化

3. 環 + 外向樹上的動態規劃

4. *插頭動態規劃

1.9 計算幾何

1. 計算幾何基礎

2. 三維計算幾何初步

3. *梯形剖分與*三角形剖分

4. 旋轉卡殼

5. 半平面交

6. pick定理

7. 掃描線

1.10 搜索相關

1. bfs,dfs

2. A* 算法

3. 叠代加深搜索,雙向廣搜

1.11 特殊算法

1. 莫隊算法,*樹上莫隊

2. 模擬退火

3. 爬山算法

4. 隨機增量法

1.12 其它重要工具與方法

1.模擬與貪心

2. 二分,三分法(求偏導)

3. 分治,CDQ分治

4. 高精度

5. 離線

6. ST表

1.13 STL

1. map

2. priority_queue

3. set

4. bitset

5. rope

1.14 非常見算法

1. *朱劉算法

2. *弦圖與區間圖

轉自:http://hzwer.com/1234.html

[轉]OI省選算法匯總