一.基本演算法:
列舉. (poj 1753
,poj 2965
)貪心(poj 1328
,poj 2109
,poj 2586
)遞迴和分治法.
遞推.構造法.(poj 3295
)模擬法.(poj 1068
,poj 2632
,poj 1573
,poj 2993
,poj 2996)
二.圖演算法:
圖的深度優先遍歷和廣度優先遍歷.
最短路徑演算法(dijkstra,bellman-ford,floyd,heap+dijkstra) (poj 1860
,poj 3259
,poj 1062
,poj 2253
,poj 1125
,poj 2240
)最小生成樹演算法(prim,kruskal) (poj 1789
,poj 2485
,poj 1258
,poj 3026
)拓撲排序 (poj 1094
)二分圖的最大匹配 (匈牙利演算法) (poj 3041
,poj 3020
)最大流的增廣路演算法(km演算法). (poj 1459
,poj 3436)
三.資料結構.
串 (poj 1035
,poj 3080
,poj 1936
)排序(快排、歸併排(與逆序數有關)、堆排) (poj 2388
,poj 2299
)簡單並查集的應用.
雜湊表和二分查詢等高效查詢法(數的hash,串的hash) (poj 3349
,poj 3274
,poj 2151
,poj 1840
,poj 2002
,poj 2503
)哈夫曼樹(poj 3253)堆
trie樹(靜態建樹、動態建樹) (poj 2513)
四.簡單搜尋
深度優先搜尋 (poj 2488
,poj 3083
,poj 3009
,poj 1321
,poj 2251
)廣度優先搜尋(poj 3278
,poj 1426
,poj 3126
,poj 3087
.poj 3414
)簡單搜尋技巧和剪枝(poj 2531
,poj 1416
,poj 2676
,poj 1129)
五.動態規劃
揹包問題. (poj 1837
,poj 1276
)型如下表的簡單dp(可參考lrj的書 page149):
六.數學
組合數學:
數論.計算方法.
七.計算幾何學.
幾何公式.
叉積和點積的運用(如線段相交的判定,點到線段的距離等). (poj 2031
,poj 1039
)多邊型的簡單演算法(求面積)和相關判定(點在多邊型內,多邊型是否相交) (poj 1408
,poj 1584
)凸包. (poj 2187
,poj 1113)
一.基本演算法:
c++的標準模版庫的應用. (poj 3096
,poj 3007
)較為複雜的模擬題的訓練(poj 3393
,poj 1472
,poj 3371
,poj 1027
,poj 2706)
二.圖演算法:
差分約束系統的建立和求解. (poj 1201
,poj 2983
)最小費用最大流(poj 2516
,poj 2195
)雙連通分量(poj 2942
)強連通分支及其縮點.(poj 2186
)圖的割邊和割點(poj 3352
)最小割模型、網路流規約(poj 3308)
三.資料結構.
線段樹. (poj 2528
,poj 2828
,poj 2777
,poj 2886
,poj 2750
)靜態二叉檢索樹. (poj 2482
,poj 2352
)樹狀樹組(poj 1195
,poj 3321
)rmq. (poj 3264
,poj 3368
)並查集的高階應用. (poj 1703
,poj 2492
)kmp演算法. (poj 1961
,poj 2406)
四.搜尋
最優化剪枝和可行性剪枝
搜尋的技巧和優化 (poj 3411
,poj 1724
)記憶化搜尋(poj 3373
,poj 1691)
五.動態規劃
較為複雜的動態規劃(如動態規劃解特別的施行商問題等) (poj 1191
,poj 1054
,poj 3280
,poj 2029
,poj 2948
,poj 1925
,poj 3034
)記錄狀態的動態規劃. (poj 3254
,poj 2411
,poj 1185
)樹型動態規劃(poj 2057
,poj 1947
,poj 2486
,poj 3140)
六.數學
組合數學:
數學.計算方法.
隨機化演算法(poj 3318
,poj 2454
)雜題. (poj 1870
,poj 3296
,poj 3286
,poj 1095
)七.計算幾何學.
座標離散化.
掃瞄線演算法(例如求矩形的面積和周長並,常和線段樹或堆一起使用). (poj 1765
,poj 1177
,poj 1151
,poj 3277
,poj 2280
,poj 3004
)多邊形的核心(半平面交)(poj 3130
,poj 3335
)幾何工具的綜合應用.(poj 1819
,poj 1066
,poj 2043
,poj 3227
,poj 2165
,poj 3429)
一.基本演算法要求:
**快速寫成,精簡但不失風格 (poj 2525
,poj 1684
,poj 1421
,poj 1048
,poj 2050
,poj 3306
)保證正確性和高效性. poj 3434
二.圖演算法:
度限制最小生成樹和第k最短路. (poj 1639
)最短路,最小生成樹,二分圖,最大流問題的相關理論(主要是模型建立和求解) (poj 3155
, poj 2112
,poj 1966
,poj 3281
,poj 1087
,poj 2289
,poj 3216
,poj 2446
)最優比率生成樹. (poj 2728
)最小樹形圖(poj 3164
)次小生成樹.
無向圖、有向圖的最小環
三.資料結構.
trie圖的建立和應用. (poj 2778))
雙端佇列和它的應用(維護乙個單調的佇列,常常在動態規劃中起到優化狀態轉移
的目的). (poj 2823
)左偏樹(可合併堆).
字尾樹(非常有用的資料結構,也是賽區考題的熱點). (poj 3415
,poj 3294)
四.搜尋
較麻煩的搜尋題目訓練(poj 1069
,poj 3322
,poj 1475
,poj 1924
,poj 2049
,poj 3426
)廣搜的狀態優化:利用m進製數儲存狀態、轉化為串用hash表判重、按位壓縮儲存
狀態、雙向廣搜、a*演算法. (poj 1768
,poj 1184
,poj 1872
,poj 1324
,poj 2046
,poj 1482
)深搜的優化:盡量用位運算、一定要加剪枝、函式引數盡可能少、層數不易過大
、可以考慮雙向搜尋或者是輪換搜尋、ida*演算法. (poj 3131
,poj 2870
,poj 2286)
五.動態規劃
需要用資料結構優化的動態規劃. (poj 2754
,poj 3378
,poj 3017
)四邊形不等式理論.
較難的狀態dp(poj 3133)
六.數學
組合數學.
博奕論.
七.計算幾何學.
半平面求交(poj 3384
,poj 2540
)可檢視的建立(poj 2966
)點集最小圓覆蓋.
對踵點(poj 2079)
八.綜合題.
(poj 3109
,poj 1478
,poj 1462
,poj 2729
,poj 2048
,poj 3336
,poj 3315
,poj 2148
,poj 1263
)
POJ題目分類推薦 (很好很有層次感)
oj上的一些水題 可用來練手和增加自信 poj 3299 poj 2159 poj 2739 poj 1083 poj 2262 poj 1503 poj 3006 poj 2255 poj 3094 一.基本演算法 列舉.poj 1753 poj 2965 貪心 poj 1328 poj 2109...
POJ題目分類推薦 (很好很有層次感)
oj上的一些水題 可用來練手和增加自信 poj 3299 poj 2159 poj 2739 poj 1083 poj 2262 poj 1503 poj 3006 poj 2255 poj 3094 一.基本演算法 列舉.poj 1753 poj 2965 貪心 poj 1328 poj 2109...
POJ題目分類
oj上的一些水題 可用來練手和增加自信 poj3299,poj2159,poj2739,poj1083,poj2262,poj1503,poj3006,poj2255,poj3094 初期 一.基本演算法 1 列舉.poj1753,poj2965 2 貪心 poj1328,poj2109,poj25...