JS实现斐波那契列数的三种方法


本文摘自PHP中文网,作者藏色散人,侵删。

下面由javascript基础入门教程栏目给大家介绍JS实现斐波那契列数的三种方法,希望对需要的朋友有所帮助!

JS实现斐波那契列数的三种方法

大家是怎么实现斐波那契列数的

1,1,2,3,5,8...

f(n)=f(n-1) + f(n-2)

方法一:

1

2

3

4

5

6

7

8

function f(n){

    if(n == 1 || n == 0){

        return 1;

    }

    return f(n-1) + f(n-2);

}

 

index.html

再给两种解法,对比一下

方法二:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

function f(n) {

    var arr = [];

    var value = null;

 

    function _f(n) {

        if (n == 1 || n == 0) {

        return 1;

    }

    if (arr[n])

        return arr[n];

        value = _f(n - 1) + _f(n - 2);

        arr[n] = value;

        return value;

    }

    return _f(n);

}       

 

方法二

还有一种更简单的用的是数组存储

方法三:

1

2

3

4

5

6

7

8

function fn(n) {

     var dp = new Array(n + 1);

     dp[0] = dp[1] = 1;

     for (let i = 2, length = dp.length; i < length; i++) {

          dp[i] = dp[i - 1] + dp[i - 2];

     }

     return dp[n];

}

相关推荐:《javascript高级教程

以上就是JS实现斐波那契列数的三种方法的详细内容,更多文章请关注木庄网络博客

相关阅读 >>

简析如何用js实现简单轮播

javascript中对象属性详解

jquery怎么写ajax

javascript如何解除绑定事件

为什么css放上面js放下面

js 中 undefined 什么意思

微信js是什么

js如何实现滑动门效果

js怎么移除css属性

json解析是什么?

更多相关阅读请进入《js》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...