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开发之动态修改网页元素样式

js是什么编程语言?

akjs是个什么软件

如何利用js实现音乐导航效果

两分钟了解jquery与javascript、js 三者间的区别

带你了解js中[]、{}、()区别(详解)

js为什么那么难

js是什么意思?

推荐六款移动端 ui 框架

js如何实现简单的秒表效果

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




打赏

取消

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

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

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

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

评论

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