function mul(n){
if( n - 1 == 0){ ///出口,也就是停止条件,不然就是一个死循环了。实际上是执行到最后一个数,这个数就是基数,这个基数是我们已知的,定义后就可以递归了。
return 1;
}
return n * mul(n-1); ///规律
}
// 5*4*3*2*mul(1)
console.log(mul(4));
///递归比较符合人的直观思维规律,但递归需要有出口.需要有实际的数据作为出口
///斐波那契数列
/// F(N) = F(N-1) + F(N-2)
///初始元素 = 1,1
///1,1,2,3,5,8,13
var num = window.prompt('input');
function Feboo(n){
///斐波那契数列求和
if(n == 1 || n ==2){
return 1; /////已知条件也是递归终止条件
}
return Feboo(n-1) + Feboo(n - 2); ///规律
}
console.log(Feboo(num));
///递归:
1.先写return 规律
2.写已知条件作为终止条件
网友评论