您的位置:首页 > 其它

斐波那契数列

2017-06-17 23:26 162 查看


题目描述

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项。

n<=39

class Solution {

public:

    int Fibonacci(int n) {

     //F(0)=0,F(1)=1,F(n)=F(n-1)+F(n-2)

     //递归法

 //    if(n==0) return 0;

 //  if(n==1) return 1;

       

 //   return Fibonacci(n-2)+Fibonacci(n-1);

     //非递归法。。 

      //偷工减料。

      /*  vector<int> tmp(40);

        tmp[0]=0;

        tmp[1]=1;

        if(n<=0) return n;

        //if(n==1) return 1;

        int i=2;

        while(i<=n)

      {

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

             i++;

      }

        return tmp
;

      */

       //动态规划算法

        int  f=0;

        int  g=1;

        

        while(n--)

            {

             g=g+f;

            //f为原g.

             f=g-f;

            }

        return f;

        

    }

};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: