递归算法的基本使用
//求1-n的和
function dosum(n){n
if(n === 1){
return n;
}else{
return N + dosum(n - 1);
}
}
// 求n的阶乘
function multiplication(n){
if(n === 1){
return 1;
}
return n*multiplication(n -1);
}
// 汉诺塔问题
var targetArr = [5,4,3,2,1];
function hanTower(arr,middle,result){
if(arr.length === 0){
return 0;
}else{
var array = arr.splice(1);
middle.push(...array);
result.push(...arr);
return 2 + hanTower(middle,[], result);
}
}
hanTower(targetArr ,[],[] ); // 10

浙公网安备 33010602011771号