手记

JS中的递归方法的实例

找出能被两个给定参数和它们之间的连续数字整除的最小公倍数。

范围是两个数字构成的数组,两个数字不一定按数字顺序排序。

例如对 1 和 3 —— 找出能被 1 和 3 和它们之间所有数字整除的最小公倍数。

代码:

function smallestCommons(arr) {
  arr = arr.sort(function(a,b){return a-b;});
  function fun(m,n){
    if(m%n === 0){
      return n;
    }
    return fun(n,m%n);
  }
  var num=arr[0];
  for(var i=arr[0]+1;i<=arr[1];i++){
    num *=i/fun(num,i);
  }
  return num;
}

smallestCommons([1,5]);
2人推荐
随时随地看视频
慕课网APP

热门评论

递归好难,算法是不是都这么难!求推荐有什么办法能练一练递归的算法

查看全部评论