经典算法

动态规划-斐波那契数列

初始状态

f[0] = 0;

f[1] = 1;

递推公式(状态转移方程)

f[n] = f[n-1] + f[n-2];

【参考程序】

//小牛编程
//使用数组记录状态转移 

int fibonacci(int n) {
    if (n <= 1) {
        return n;
    }

    vector<int> dp(n + 1, 0); // 动态规划数组
    dp[0] = 0;
    dp[1] = 1;

    for (int i = 2; i <= n; i++) {
        dp[i] = dp[i - 1] + dp[i - 2];
    }

    return dp[n];
}