1.阶乘的时候, 函数一般要用到递归算法, 所以函数内部一定会调用自身
需求:给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。返回这个结果。
示例 :
输入: num = 38
输出: 2
解释: 各位相加的过程为:
38 --> 3 + 8 --> 11
11 --> 1 + 1 --> 2
由于 2 是一位数,所以返回 2。
阶乘函数写法 ( 算法时间复杂度O(1) )
var total = function (num){
let result = eval(String(num).split('').join('+'));
if(String(result).length == 1){
return result;
}else{
return total(result);
}
}
let num = 38;
console.log(total(num));
网友评论