剑指offer——斐波那契数列

版权声明:本文为博主原创文章,若需转载,请注明http://blog.csdn.net/qq_30091945 https://blog.csdn.net/qq_30091945/article/details/80293885

题目

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


分析

这题不能用递归方式进行编写,递归方法超出内存,因此,必须改用保存现场的方法,由于题目所说n<=39,那么设置long long的数组data[50]用来存放每次递归方法的结果。利用循环算出第n个斐波那契数。


C++代码

class Solution {
public:
    long long data[50];
    int Fibonacci(int n) {
        this->data[1] = data[2] = 1;
        for(int i = 2 ; i <= n ; i++){
            data[i] = data[i-1]+data[i-2];
        }
        return data[n];
    }
};
阅读更多

没有更多推荐了,返回首页