【JS】小作业-阶乘递归思想

2020-07-27  本文已影响0人  Dylan_abaa

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.写已知条件作为终止条件

上一篇 下一篇

猜你喜欢

热点阅读