首页 > 其他 > 详细

斐波那契求第n项

时间:2019-01-05 19:30:26      阅读:151      评论:0      收藏:0      [点我收藏+]

摘自  https://blog.csdn.net/lpjishu/article/details/51323116

斐波那契求第n项是常见的算法题

方法1  递归法

技术分享图片

 

    //斐波那契 0,1,1,2,3,5  求n
    //调用过程像一个二叉树
    //f8 会调 f7,f6  f7会调用 f6,f5。 这样f6就重复了
    //45之后就很慢了
    function getN(n){
        if(n <= 0){
            return 0;
        }
        if(n === 1){
            return 1;
        }
        return getN(n - 1) + getN(n - 2);
    }
    console.log(getN(47));

 

 方法2 循环

    //循环 秒出
    function getN(n){
        if(n <= 0){
            return 0;
        }
        if(n === 1){
            return 1;
        }
        var prev = 0;
        var next = 1;
        var num = 0;
        for (var i = 2; i <= n; i++) {
            num = next + prev
            prev = next
            next = num
        }
        return num;
    }
    console.log(getN(10000));

 

斐波那契求第n项

原文:https://www.cnblogs.com/anxiaoyu/p/10225420.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!