日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

数据结构和算法:全面的算法代码库

發布時間:2025/4/16 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据结构和算法:全面的算法代码库 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

原文鏈接:https://github.com/Dev-XYS/Algorithms

Algorithms

本次README修訂為算法倉庫Algorithms的第100次commit,首先我們慶祝自2016年8月4日本倉庫建立以來Dev-XYS在算法學習方面取得的顯著進步!

這里有各種算法的C++代碼,任何人可以在自己的任何程序中使用,歡迎大家指出代碼中的錯誤以及有待改進的地方。

本倉庫內所有代碼的授權方式為Unlicense,大家如果使用我的代碼開發自己的軟件掙了大錢,或是參考我的代碼在NOI中得了金牌,我都會很高興的。使用這里的代碼之后,你可以自主選擇是否公開源代碼。總而言之,你可以把這里的代碼當作你自己寫的一樣,無論怎樣使用都是被允許的。但是,我不對本倉庫內代碼的正確性負責。大家要是使用我的代碼開發軟件而導致程序崩潰,或是參考我的代碼在考試時出錯,請不要向我抱怨。如果你愿意,遇到問題可以在Issues中提出來,我們共同解決。我們不贊成Pull Request,因為本倉庫主要儲存作者已經學習的算法,全部代碼均由作者本人負責維護與更新。

以下索引提供了本倉庫內算法的中文名,方便大家查找。更新可能有很長時間的延遲,不保證所有算法的名稱都在列表中出現。

Index

ContentsFileName
AC自動機Aho-Corasick-Automation
單源最短路徑(SPFA)Bellman-Ford(Queue-Optimised)
單源最短路徑(Bellman-Ford)Bellman-Ford
使用Edmonds-Karp進行二分圖匹配Bigrpah-Matching(Edmonds-Karp)
普通的二叉搜索樹Binary-Search-Tree
廣度優先搜索Breadth-First-Search
冒泡排序Bubble-Sort
桶排序Bucket-Sort
組合數的遞推求解Combination(Recursion)
枚舉組合Combination
基本的復數類Complex-Number
割點Cut-Vertex
深度優先搜索Depth-First-Search
堆優化的Dijkstra算法Dijkstra(Heap-Optimised)
并查集Disjoint-Set-Union
最大流Edmonds-Karp算法Edmonds-Karp
歐拉函數Euler’s-Totient-Function
有向圖的歐拉回路Eulerian-Tour(Digraph)
拓展歐幾里得算法Extended-Euclid
簡單的快速冪Fast-Exponentiation
樹狀數組Fenwick-Tree
所有結點對之間的最短路徑(Floyd)Floyd-Warshall
凸包算法(Graham掃描法)Graham-Scan
輾轉相除法求最大公約數Greatest-Common-Divisor
堆排序Heap-Sort
ISAP算法Improved-Shortest-Augmenting-Path(Naive)
插入排序Insertion-Sort
字符串匹配(KMP)Knuth-Morris-Pratt
最小生成樹(Kruskal)Kruskal
最近公共祖先(Tarjan)Least-Common-Ancestor(Tarjan)
使用后綴數組求解最長公共子串Longest-Common-Substring
最長上升子序列(n·log(n))Longest-Increasing-Subsequence(n·log(n))
倍增法求最近公共祖先Lowest-Common-Ancestor(Doubling)
樸素的矩陣乘法Matrix-Multiplication(Naive)
歸并排序Merge-Sort
最小堆Min-Heap
乘法逆元Modular-Multiplicative-Inverse
僅支持單點修改的可持久化線段樹(維護區間和值)Persistent-Segment-Tree(Sum)
試除法素數測試Prime-Check(Naive)
線性的素數篩法Prime-Sieve(Linear)
隊列的基本操作Queue
快速排序的優化版本Quick-Sort(Extra-Optimised)
快速排序的隨機化版本Quick-Sort(Randomized)
快速排序Quick-Sort
使用向量叉積判斷兩個有向線段的時針關系Segment-Direction
線段樹維護區間最大值Segment-Tree(Maximum)
線段樹維護區間最小值Segment-Tree(Minimum)
線段樹維護區間和值Segment-Tree(Sum)
普通的選擇算法Selection
Eratosthenes素數篩法Sieve-of-Erotosthenes
指針版的單向鏈表Singly-Linked-List(Pointer)
跳表Skip-List
ST表Sparse-Table
伸展樹Splay
博弈論SG函數Sprague-Grundy
棧的基本操作Stack
遞推法求解無符號第一類斯特林數Stirling-Number(Cycle,Unsigned,Recursion)
遞推法求解第二類斯特林數Stirling-Number(Subset,Recursion)
倍增法求解后綴數組Suffix-Array(Doubling)
倍增法求解后綴數組(附帶Height數組)Suffix-Array-with-Height(Doubling)
使用Tarjan算法求解強連通分量Tarjan(Strongly-Connected-Components)
數組版的字典樹Trie(Array)
指針版的字典樹Trie(Pointer)

總結

以上是生活随笔為你收集整理的数据结构和算法:全面的算法代码库的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。