寫在前面:
因爲博主的技術有限,算法也是很難得一門科學,我只能給出儘量全的分類,然後儘可能的講解。
但是有些算法超出了本人的能力範疇,說實在的就是我太菜了。所以大家就當本文是目錄型的文章即可。
本人是退役ACMer選手,因爲自己太菜,所以選擇退出,別去丟人了。
1.基礎算法
- 遞歸
- 遞推
- 分治
- 貪心
- 二分
- 回溯搜索
2.動態規劃
- 揹包
- 線性DP
- 區間DP
- 數位DP
- 狀態壓縮DP
- 樹形DP
- 概率/期望DP
- 插頭DP
圖論
- BFS DFS
- 最短路
- 第K短路
- 最小生成樹(森林)
- 次小生成樹
- 曼哈頓最小生成樹
- 最短路徑生成樹
- 歐拉路徑
- 拓撲排序
- 最小樹形圖
- 生成樹計數
- 樹的重心
- DAG的深度優先搜索標記
- 圖的割點、橋和雙連通分支的基本概念
- LCA
- 無向圖找橋
- 無向圖連通度(割)
- 最大團問題
- 一般圖匹配帶花樹
- 有向圖的強連通分量
- Tarjan強連通分量
- 弦圖判斷
- 弦圖的Perfect Elimination點排列
- 穩定婚姻問題
- 雙連通分支
- 無向圖連通分支
- 有向圖強連通分支
- 有向圖最小點基
- Floyd求最小環
- 2-SAT
數據結構:
- Splay樹
- 劃分樹
- 左偏樹
- 線段樹
- 樹鏈剖分
- 動態樹
- 主席樹
- Trie樹
- RMQ
- 二分查找
- 樹狀數組
- 滾動數組
- 逆序數
- 帶權值的並查集
- Chtholly Tree (珂朵莉樹) ODT
- SBT算法
- AVL樹
- 替罪羊樹
數學:
一、組合數學:
- Polya定理、burnside定理
- 置換,置換的運算
- 排列組合,區間計數,計數序列
- 鴿籠原理、容斥原理
- 遞推關係
- 母函數
- 莫比烏斯反演
- 偏序關係理論
二、數論.
- 素數與整除問題
- 進制位.
- 同餘模運算.
- 歐拉函數
三、計算方法
- 二分法求解單調函數相關知識.
- 三分法求解單峯(單谷)的極值.
- 0/1分數規劃.
- 矩陣法
- 隨機化算法
- 迭代逼近
四、計算幾何
- 叉積和點積的運用(如線段相交的判定,點到線段的距離等).
- 多邊型的簡單算法(求面積)和相關判定(點在多邊型內,多邊型是否相交)
- 二維、三維凸包
- 掃描線算法(例如求矩形的面積和周長並,常和線段樹或堆一起使用).
- 半平面求交
- 點集最小圓覆蓋.
- 對踵點(最遠點對)
五、博弈論
- 巴什博奕(BashGame)
- 威佐夫博奕(WythoffGame)
- 尼姆博奕(NimmGame)
- 組合博弈
六、其他數學
- 高斯消元法
- 概率問題.
- GCD、擴展的歐幾里德(中國剩餘定理)
- 高次同餘方程
- 矩陣變換
寫在最後:
我叫風骨散人,名字的意思是我多想可以不低頭的自由生活,可現實卻不是這樣。家境貧寒,總得向這個世界低頭,所以我一直在奮鬥,想改變我的命運給親人好的生活,希望同樣被生活綁架的你可以通過自己的努力改變現狀,深知成年人的世界裏沒有容易二字。目前是一名在校大學生,預計考研,熱愛編程,熱愛技術,喜歡分享,知識無界,希望我的分享可以幫到你!
如果有什麼想看的,可以私信我,如果在能力範圍內,我會發布相應的博文!
感謝大家的閱讀!😘你的點贊、收藏、關注是對我最大的鼓勵!