斐波那契数(DP-01)

题目出处

解题思路

读题,可知:要计算斐波那契数的第 n 项,就需要知道 n-1 和 n -2 项的值。事实上,题干已经对此进行了分析,并给出了状态方程 f[n] = f[n-1] + f[n-2], 这一方程的初始条件为 f[0] = 0, f[1] = 1

综上,不难看出,如果我们建立一个数组以表示其状态,那么数组的第 n 项就应当为

f[n-1] + f[n-2], n > 1

1, n = 1

0, n = 0

代码

class Solution {
    public int fib(int n) {
        if (0 == n)     return 0;

        int[] fib = new int[n + 1];
        fib[0] = 0;
        fib[1] = 1;

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

        return fib[n];
    }
}
posted @ 2021-07-16 10:59  寻落英以得度  阅读(97)  评论(0)    收藏  举报