算法本质是一组输入驱动的规则集合,通过内部计算和数据操作产出一个或多个输出。从复杂的数据处理到简单的算术运算,算法通过一系列步骤给出有用的结果。举例来说,一个简单的函数可能接收两个数并返回它们的和。
在科学研究与工程领域,算法的种类繁多,如何快速定位所需算法成为一个重要课题。
一个知名的开源算法库声称规模庞大,覆盖众多领域的实现与应用。

首先来看“热门分类”,可以在其中发现以下方向的算法:
排序(Sorting)算法、搜索(Searching)算法、动态规划(Dynamic Programming)算法、加密(Ciphers)算法、数据结构(Data structures)算法、数学(Math)算法、数字图像处理(Digital image Processing)算法,以及更多其他分支。

在每个“热门分类”下,进一步包含具体的子算法。以动态规划为例,可以看到编辑距离(Edit Distance)、子集和问题(Sum of Subsets)、最小分区(Minimum Partition)等子算法。

接着点击每个子算法右下方的“MORE”按钮,即可查看到算法提出者、日期、问题描述以及贡献者等信息的详情。

该库还提供了用多种主流编程语言实现的算法版本,包括 Python、Java、C、C++ 等,每种语言通常对应一个独立的代码库。

部分编程语言列表如下所示。
以 Python 实现的算法为例,可以看到音频滤波器(Audio Filters)、位操作(Bit Manipulation)、回溯(Backtracking)等算法。点击每个算法右下的“More”即可进入详情页。

使用 Python 实现的部分算法示例。
另外,仍可以通过网站主页上的搜索框,快速找到所需的任何算法。

