剑指offer-斐波那契数列

题目描述 斐波那契数列

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

解题思路

简单动态规划

  • DP定义:记dp[i]为斐波那契数列的第n项;
  • DP初始:dp[0] = 0,dp[1] = 1;
  • DP更新:dp[i] = dp[i-1] + dp[i-2];

代码

class Solution {
public:
    int Fibonacci(int n) {
        vector dp(n+1, 0);
        dp[1] = 1;
        for(int i=2;i<=n;i++){
            dp[i] = dp[i-1] + dp[i-2];
        }
        return dp[n];
    }
};

你可能感兴趣的:(剑指offer-斐波那契数列)