搜索算法,一觸即達:GitHub上有個規模最大的開源算法庫

機器之心報道

編輯:杜偉

我們知道,算法本質上是一套規則,它接受一個或多個輸入,然後執行內部計算和數據操作,返回一個或多個輸出。從複雜的數據操作和哈希,到簡單運算,算法通過一系列步驟來產出有用的結果。舉個例子,算法可以是一個簡單的函數,它接受兩個輸入值,將它們相加,然後返回總和。

然而,科學世界的算法何止萬千,如何快速找到自己需要的算法是一個不容忽視的問題。

GitHub 上的一個項目「The Algorithms」是我們尋求的終極答案,它號稱「規模最大的開源算法庫」。

首先來看「熱門分類」,我們可以找到如下領域的算法:

然後,各個「熱門分類」下面涵蓋具體的算法。這裡以動態規劃算法爲例,我們可以看到編輯距離(Edit Distance)、子集和問題(Sum of Sunset)、最小分區(Minimum Partition)等子算法。

接着點擊每個子算法右下的「MORE」,這裡以編輯距離算法爲例,我們可以鏈接到算法提出者、日期、問題描述以及貢獻者等。

最後,「The Algorithms」庫還分別提供了用 Python、Java、C、C++ 等數十種編程語言實現的算法,每種語言都有自己的 GitHub 算法代碼庫。

部分編程語言。

這裡以 Python 編程語言實現的算法爲例,我們可以看到音頻濾波器(Audio Filters)、位操作(Bit Manipulation)、回溯(Backtracking)算法等。同樣點擊每個算法右下的「More」鏈接到詳情頁。

使用 Python 實現的部分算法。

此外,我們還可以通過網站主頁上的搜索框找到任何自己想要的算法。