最大公约数和最小公倍数算法

Posted pluslius

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最大公约数和最小公倍数算法相关的知识,希望对你有一定的参考价值。


 // 最大公约数算法
 // 1. a % b 进行取余运算
 // 2. 将被取余数与余数进行再次取余运算
 // 3. 直到a % b为0时停止取余运算
 // 4. 将取余为0时的被取余数返回即是最大公约数
 function gcd(a, b) {
    if (b === 0) {
       return a;
    }
    return gcd(b, a % b);
 }

// 求多个数的最大公约数
const empsColumns = {
   Salary: [40000, 50000, 44000, 55000, 62000]
}
const w = empsColumns.Salary.reduce(gcd)

 // 最小公倍数算法
 // a * b 得到的结果 / gcd(a,b) 得到最小公倍数
 function lcm(a, b) {
    return a * b / gcd(a,b)
 }

以上是关于最大公约数和最小公倍数算法的主要内容,如果未能解决你的问题,请参考以下文章

从搜索文档中查找最小片段的算法?

最大公约数和最小公倍数

使用Java中的数组更好的最小和最大算法

最小费用最大流算法

最大和最小差(贪心算法)

算法---最小公倍数和最大公约数