方法来自求多个数最小公倍数的一种变换算法
最小公倍数的算法由最大公约数转化而来。最大公约数可通过如下步骤求得:
(1) 找到a1,a2,..,an中的最小非零项aj,若有多个最小非零项则任取一个
(2) aj以外的所有其他非0项ak用ak mod aj代替;若没有除aj以外的其他非0项,则转到(4)
(3) 转到(1)
(4) a1,a2,..,an的最大公约数为aj
写了两个版本的javascript求公倍数和公约数,主要偏重于算法,没有太注意命名,很多就直接写的单字母名称。
0.简单易懂的循环
function getMin(arr){
var min = Infinity
arr.forEach(function(item){
if( item < min && item !=0 ){
min = item
}
})
return min
}
function howMuchZero(arr){
var zerocount = 0
arr.forEach( function(item){
item === 0 ?
zerocount++ : zerocount
}
)
if(zerocount === arr.length -1) {
return true
}
else return false
}
function

本文介绍了使用JavaScript实现求一组数的最大公约数和最小公倍数的三种方法,包括循环、面向对象和回归迭代。算法基于找到最小非零项并用模运算更新其他项的原则,直至所有项变为零,最后的非零项即为最大公约数。此外,还提供了简洁的循环实现方式。
最低0.47元/天 解锁文章
489

被折叠的 条评论
为什么被折叠?



