【剑指offer】斐波那契数列 python+C++

217 阅读1分钟

【题目描述】

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

【思路】

动态规划,自下而上。

【代码】

c++:
class Solution {
public:
    int Fibonacci(int n) {
        if(n==0||n==1){
            return n;
        }
        vector<int> array;
        array.push_back(0);
        array.push_back(1);
        for (int i=2;i<=n;i++){
            array.push_back(array[i-1]+array[i-2]);
        }
        return array[n];
    }
};
python:
class Solution:
    def Fibonacci(self, n):
        if(n==0 or n==1):
            return n
        f=[0,1]
        for i in range(2,n+1):
            f.append(f[i-1]+f[i-2])
        return f[-1]