tft每日頭條

 > 生活

 > acm數據結構與算法能力訓練

acm數據結構與算法能力訓練

生活 更新时间:2024-12-29 09:12:02

小編在大一的時候,參加了學校中的ACM社團,那時候啥都不知道,對一切都充滿了好奇,不過待了一年半就沒有繼續,原因挺多的,在這一年半中,學了許多聽都沒聽過的算法,也不能說徹底了解,隻能說“愛過”。

通過這一年半ACM,感覺 智商上的差距光靠努力是彌補不回來的,開個玩笑,努力總比不努力強一萬倍。

ACM的确很鍛煉思維,今天就在網上找了一下有關ACM的一些算法,來紀念我這一年半的經曆。

數據結構

  • 棧,隊列,鍊表

  • 哈希表,哈希數組

  • 堆,優先隊列

    雙端隊列

    可并堆

    左偏堆

  • 二叉查找樹

    Treap

    伸展樹

  • 并查集

    集合計數問題

    二分圖的識别

  • 平衡二叉樹

  • 二叉排序樹

  • 線段樹

  • 基本圖算法圖

    廣度優先遍曆

    深度優先遍曆

    拓撲排序

    割邊割點

    強連通分量

    Tarjan算法

    雙連通分量

    強連通分支及其縮點

    圖的割邊和割點

    最小割模型、網絡流規約

    2-SAT問題

    歐拉回路

    哈密頓回路

  • 最小生成樹

    Prim算法

    Kruskal算法(稀疏圖)

    Sollin算法

    次小生成樹

    第k小生成樹

    最優比例生成樹

    最小樹形圖

    最小度限制生成樹

    平面點的歐幾裡德最小生成樹

    平面點的曼哈頓最小生成樹

    最小平衡生成樹

  • 最短路徑

    有向無環圖的最短路徑->拓撲排序

    非負權值加權圖的最短路徑->Dijkstra算法(可使用二叉堆優化)

    含負權值加權圖的最短路徑->Bellmanford算法

    含負權值加權圖的最短路徑->Spfa算法

    (稠密帶負權圖中SPFA的效率并不如Bellman-Ford高)

    全源最短路弗洛伊德算法Floyd

    全源最短路Johnson算法

    次短路徑

    第k短路徑

    差分約束系統

    平面點對的最短路徑(優化)

    雙标準限制最短路徑

  • 最大流

    增廣路->Ford-Fulkerson算法

    預推流

    Dinic算法

    有上下界限制的最大流

    節點有限制的網絡流

    無向圖最小割->Stoer-Wagner算法

    有向圖和無向圖的邊不交路徑

    Ford-Fulkerson叠加算法

    含負費用的最小費用最大流

  • 匹配

    Hungary算法

    最小點覆蓋

    最小路徑覆蓋

    最大獨立集問題

    二分圖最優完備匹配Kuhn-Munkras算法

    不帶權二分匹配:匈牙利算法

    帶權二分匹配:KM算法

    一般圖的最大基數匹配

    一般圖的賦權匹配問題

  • 拓撲排序

  • 弦圖

  • 穩定婚姻問題

搜索

  • 廣搜的狀态優化

    利用M進制數存儲狀态

    轉化為串用hash表判重

    按位壓縮存儲狀态

    雙向廣搜

    A*算法

  • 深搜的優化

    位運算

    剪枝

    函數參數盡可能少

    層數不易過大

    雙向搜索或者是輪換搜索

    IDA*算法

  • 記憶化搜索

動态規劃

  • 四邊形不等式理論

  • 不完全狀态記錄

    青蛙過河問題

    利用區間dp

  • 背包類問題

    0-1背包,經典問題

    無限背包,經典問題

    判定性背包問題

    帶附屬關系的背包問題

    -1背包問題

    雙背包求最優值

    構造三角形問題

    帶上下界限制的背包問題(012背包)

  • 線性的動态規劃問題

    積木遊戲問題

    決鬥(判定性問題)

    圓的最大多邊形問題

    統計單詞個數問題

    棋盤分割

    日程安排問題

    最小逼近問題(求出兩數之比最接近某數/兩數之和等于某數等等)

    方塊消除遊戲(某區間可以連續消去求最大效益)

    資源分配問題

    數字三角形問題

    漂亮的打印

    郵局問題與構造答案

    最高積木問題

    兩段連續和最大

    2次幂和問題

    N個數的最大M段子段和

    交叉最大數問題

  • 判定性問題的dp(如判定整除、判定可達性等)

    模K問題的dp

    特殊的模K問題,求最大(最小)模K的數

    變換數問題

  • 單調性優化的動态規劃

    1-SUM問題

    2-SUM問題

    序列劃分問題(單調隊列優化)

  • 剖分問題(多邊形剖分/石子合并/圓的剖分/乘積最大)

    凸多邊形的三角剖分問題

    乘積最大問題

    多邊形遊戲(多邊形邊上是操作符,頂點有權值)

    石子合并(N^3/N^2/NLogN各種優化)

  • 貪心的動态規劃

    最優裝載問題

    部分背包問題

    乘船問題

    貪心策略

    雙機調度問題Johnson算法

  • 狀态dp

    牛仔射擊問題(博弈類)

    哈密頓路徑的狀态dp

    兩支點天平平衡問題

    一個有向圖的最接近二部圖

  • 樹型dp

    完美服務器問題(每個節點有3種狀态)

    小胖守皇宮問題

    網絡收費問題

    樹中漫遊問題

    樹上的博弈

    樹的最大獨立集問題

    樹的最大平衡值問題

    構造樹的最小環

數學

數論

  • 中國剩餘定理

  • 歐拉函數

  • 歐幾裡得定理

  • 歐幾裡德輾轉相除法求GCD(最大公約數)

  • 擴展歐幾裡得

  • 大數分解與素數判定

  • 佩爾方程

  • 同餘定理(大數求餘)

  • 素數測試

    一千萬以内:篩選法

    一千萬以外:米勒測試法

  • 連分數逼近

  • 因式分解

  • 循環群生成元

  • 素數與整除問題

  • 進制位.

  • 同餘模運算

組合數學

  • 排列組合

  • 容斥原理

  • 遞推關系和生成函數

  • Polya計數法

    Polya計數公式

    Burnside定理

  • N皇後構造解

  • 幻方的構造

  • 滿足一定條件的hamilton圈的構造

  • Catalan數

  • Stirling數

  • 斐波拉契數

  • 調和數

  • 連分數

  • MoBius反演

  • 偏序關系理論

  • 加法原理和乘法原理

計算幾何

  • 基本公式

    叉乘

    點乘

    常見形狀的面積、周長、體積公式

    坐标離散化

  • 線段

    判斷兩線段(一直線、一線段)是否相交

    求兩線段的交點

  • 多邊形

    判定凸多邊形,頂點按順時針或逆時針給出,(不)允許相鄰邊共線

    判點在凸多邊形内或多邊形邊上,頂點按順時針或逆時針給出

    判點在凸多邊形内,頂點按順時針或逆時針給出,在多邊形邊上返回0

    判點在任意多邊形内,頂點按順時針或逆時針給出

    判線段在任意多邊形内,頂點按順時針或逆時針給出,與邊界相交返回1

    多邊形重心

    多邊形切割(半平面交)

    掃描線算法

    多邊形的内核

  • 三角形

    内心

    外心

    重心

    垂心

    費馬點

  • 判直線和圓相交,包括相切

    判線段和圓相交,包括端點和相切

    判圓和圓相交,包括相切

    計算圓上到點p最近點,如p與圓心重合,返回p本身

    計算直線與圓的交點,保證直線與圓有交點

    計算線段與圓的交點可用這個函數後判點是否在線段上

    計算圓與圓的交點,保證圓與圓有交點,圓心不重合

    計算兩圓的内外公切線

    計算線段到圓的切點

    點集最小圓覆蓋

  • 可視圖的建立

  • 對踵點

  • 經典問題

    平面凸包

    三維凸包

    Delaunay剖分/Voronoi圖

計算方法

  • 二分法

    二分法求解單調函數相關知識

    用矩陣加速的計算

  • 叠代法

  • 三分法

  • 解線性方程組

    LUP分解

    高斯消元

  • 解模線性方程組

  • 定積分計算

  • 多項式求根

  • 周期性方程

  • 線性規劃

  • 快速傅立葉變換

  • 随機算法

  • 0/1分數規劃

  • 三分法求解單峰(單谷)的極值

  • 叠代逼近

  • 矩陣法

博弈論

  • 極大極小過程

  • Nim問題

在網上找的,大多都沒見過,有能力的可以學習一下。

acm數據結構與算法能力訓練(ACM中那些你見都沒見過的算法)1

,

更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!

查看全部

相关生活资讯推荐

热门生活资讯推荐

网友关注

Copyright 2023-2024 - www.tftnews.com All Rights Reserved