首页
/
每日頭條
/
生活
/
acm數據結構與算法能力訓練
acm數據結構與算法能力訓練
更新时间:2024-12-29 05:14:50

小編在大一的時候,參加了學校中的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

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
為什麼牙齒會出現很多黑點點
為什麼牙齒會出現很多黑點點
牙齒上有小黑點,正常刷牙還刷不掉,這是怎麼一回事呢?牙齒最容易出現黑點的部位就是牙齒的咬颌面,也就是咀嚼時牙冠和食物的接觸面,由于前磨牙和磨牙的咬合面不平整光滑,加大了牙齒之間的接觸面積,增大了咀嚼效率,和食物接觸面積增大,所以那個部位很容...
2024-12-29
高溝水上樂園
高溝水上樂園
夏日炎炎,連日來的35℃高溫讓人更向往海水的清涼。自本月9日開放試營業以來,位于台商區的八仙過海項目一期歡樂水世界解鎖了廣大泉州人乃至福建其他城市遊客的玩水攻略!圖源泉州八仙過海某音App上,歡樂水世界成為了衆多網友的避暑打卡點,讓人看完不...
2024-12-29
真假美猴王簡介
真假美猴王簡介
真假美猴王簡介?孫悟空打殺強盜,被唐僧趕回花果山,六耳猕猴假冒悟空,打傷唐僧,搶走行李,沙僧從觀音處找來悟空,這位假孫悟空的實力和真孫悟空一般無二,大戰孫悟空,鬧到上天入地下海,下面我們就來聊聊關于真假美猴王簡介?接下來我們就一起去了解一下...
2024-12-29
原子一直分解下去是無形能量嗎
原子一直分解下去是無形能量嗎
人類一直到了原子時代早期都還認為原子是一個不可分割的實心小球,這就是著名的原子棗糕模型,但這一切在盧瑟福和他的學生用α粒子(氦4原子核)轟擊僅有幾個原子厚度的金箔時發現,絕大多數α粒子穿透金箔而去,隻有極少的α粒子被彈開,這個出乎意料的結果...
2024-12-29
天籁之音周深演唱情歌
天籁之音周深演唱情歌
《天賜的聲音3》樂壇天花闆,美男子周深瘋狂輸出,攜手康姆士唱了一首《克蔔勒》震撼全場,讓不少觀衆都起了一身的雞皮疙瘩,表演完後,周深直言不諱,直呼跟他們來自兩個星球,包括服飾,确實形成了鮮明的對比但在周深的加持下,讓這場表演成為了全場最佳,...
2024-12-29
Copyright 2023-2024 - www.tftnews.com All Rights Reserved