关闭

斐波那契数列

标签: C++动态规划法斐波那契数列
182人阅读 评论(0) 收藏 举报
分类:
题目描述


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


思路:直接的递归会溢出,所以要采用动态规划法的思路,将每一次结算的结果都保留在一个数组里面,在用到时就省去了计算的麻烦。


C/C++代码:

class Solution
{
public:
    int Fibonacci(int n)
    {
        /*if(n <= 1) {
            return n;
        }
        else {
            return Fibonacci(n - 1) + Fibonacci(n - 2);
        }
        */
        //vector<int> record;
        int *record = new int[n + 1];
        if(n <= 1)
        {
            return n;
        }
        record[0] = 0;
        record[1] = 1;
        for(int i = 2; i <= n; i++)
        {
            record[i] = record[i - 1] + record[i - 2];
        }
        return record[n];
    }
};


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:106867次
    • 积分:4112
    • 等级:
    • 排名:第7925名
    • 原创:72篇
    • 转载:57篇
    • 译文:0篇
    • 评论:8条
    最新评论