JS 求两个整数的最大公约数及最小公倍数

求 a 和 b 两数的最大公约数:

欧几里得法(递归版)

// Greatest Common Divisor
var gcd = function(a, b) {
    if (b === 0) {
        return a;
    }
    return gcd(b, a % b);
};

 

 求 a 和 b 两数的最小公倍数:

// Least common multiple
// 基于 gcd 函数
var lcm = function(a, b) {
    const prod = a * b;
    return Math.floor(prod / gcd(a, b));
};

 

posted @ 2022-02-10 19:13  樊顺  阅读(172)  评论(0)    收藏  举报