The Algorithms logo
算法
关于我们捐赠
未定义

约束

回溯法

子集和问题

生成括号

位操作
缓存
校验和
密码
压缩

哈夫曼编码

游程编码

转换

二进制转十进制

十进制转二进制

整数转罗马数字

RGB转十六进制

罗马数字转整数

数据结构
分治法

归并排序

动态规划

最长递增子序列(贪心算法)

动态规划

硬币找零

编辑距离

斐波那契数列

背包问题

最长公共子序列

最长递增子序列

最长回文子序列

钢条切割

不同路径

弗洛伊德-沃歇尔算法

斐波那契数列

最大子数组和


割点

贝尔曼-福特算法

广度优先搜索

回溯法

二分图

循环

深度优先搜索

迪杰斯特拉算法

埃德蒙兹-卡普算法

卡恩算法

克鲁斯卡尔算法

普里姆算法

拓扑排序

散列

鲁恩算法

数学

二项式系数

卡特兰数

矩阵乘法

绝对值

真因子和

阿姆斯特朗数

绝对值

算术平均数

检查数字是否为2的幂

快速逆平方根

二项式系数

检查数字是否为2的幂

欧拉函数

扩展欧几里得算法

扩展欧几里得算法(迭代)

最大公约数

最大公约数(迭代)

自守数

第k个数

最小公倍数

线性插值

刘维尔函数

检查是否相等

行列式

判断有效性

匹配维度

Strassen矩阵乘法

按位或最大值

最大值

中位数

按位与最小值

最小值

莫比乌斯函数

完全数

下一个排列

蒙特卡罗法计算圆周率

Spigot算法计算圆周率

Pollard Rho算法

使用对数计算幂

米勒-拉宾素性测试

质因数分解

埃拉托斯特尼筛法

埃拉托斯特尼筛法 2

孪生素数

勾股定理

矩阵

杨辉三角

数值方法
其他

贪心算法

克里希纳穆提数

嵌套括号

搜索

并查集

二进制

跳跃搜索

跳跃搜索 2

线性搜索

选择第k个元素

三元搜索

测试用例

排序

二分插入排序

愚人排序

冒泡排序

桶排序

循环排序

鸡尾酒排序

梳排序

计数排序

循环排序

交换排序

堆排序

插入排序

煎饼排序

耐心排序

鸽巢排序

快速排序

基数排序

选择排序

希尔排序

简单排序

Tim排序

平方根

平方根分解

字符串

高级Aho-Corasick算法

Aho-Corasick算法

字符出现次数

遗传算法

Horspool算法

判断是否为等词

判断是否为子序列

莱文斯坦距离

判断是否为Pangram

Boyer-Moore算法

结构

使用数组实现的循环队列

队列数组

使用列表实现的队列链表

使用列表实现的栈链表