高精度
a.加法
b.減法
c.乘法
d.高精度除單精
排序演算法
a.選擇排序
b.插入排序
c.hash排序
d.歸併排序
e.堆排序
f.快排
字串匹配演算法
a.蠻力法
b.kmp
數論a.歐幾里德演算法
b.擴充套件歐幾里德演算法(ax+by=c的正整數
c.素數測試
d.篩法求素數
e.快速乘方(請用高精)
樹論a.二叉搜尋樹
b.優先佇列
c.線段樹 (rmq問題建議使用st演算法)
d.平衡樹一種(建議學習sbt)
圖論a.拓撲排序
b.割頂,割邊(橋)
c.強連通分支
d.有向無迴路圖的最長路徑(罕見用上的)
e.尤拉迴路
f.最小生成樹
1.prime
2.kruskal (這個個人覺得挺重要的)
g.次小生成樹
h.最短路徑
1.dijkstra
2.bellman-ford
3.spfa
4.flyod
計算幾何學
a.判斷兩條線段是否相交
b.凸包演算法
其他演算法
並查集rmq問題(通解:線段樹,st演算法)
屈原與漁父的演算法追求(zz)
屈原既放,游於江潭,行吟澤畔,顏色憔悴,形容枯槁。漁父見而問之曰 子非三閭大夫與?何故而至於斯?屈原曰 舉世皆濁我獨清,眾人皆醉我獨醒,是以見放。漁父曰 聖人不凝滯於物,而能與世推移。世人皆濁,何不沽其泥而揚其波?眾人皆醉,何不哺其糠而啜其醨?何故深思高舉,自令見放為?屈原曰 吾聞之,新沐者必彈冠。...
貪心演算法和動態規劃 zz
貪心演算法 1 貪心選擇性質 所謂貪心選擇性質是指所求問題的整體最優解可以通過一系列區域性最優的選擇,即貪心選擇來達到。這是貪心演算法可行的第乙個基本要素,也是貪心演算法與動態規劃演算法的主要區別。在動態規劃演算法中,每步所作的選擇往往依賴於相關子問題的解。因而只有在解出相關子問題後,才能作出選擇。...
最短路徑演算法 Dijkstra 2 zz
演算法流程 在以下說明中,s為源,w u,v 為點u和v之間的邊的長度,結果儲存在dist 初始化 源的距離dist s 設為0,其他的點距離設為無窮大,同時把所有的點的狀態設為沒有擴充套件過。迴圈n 1次 在沒有擴充套件過的點中取一距離最小的點u,並將其狀態設為已擴充套件。對於每個與u相鄰的點v,...