【leetcode】509. 斐波那契数(easy)

斐波那契数 (通常用 F(n) 表示)形成的序列称为 斐波那契数列 。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:

F(0) = 0,F(1) = 1 F(n) = F(n - 1) + F(n - 2),其中 n > 1

解答

class Solution {
    public int fib(int n) {
        if(n==0) return 0;
        if(n==1) return 1;
        int a = 0, b = 1, c = 0;//a记录f(m-2),b记录f(m-1),c记录f(m)
        while(n > 1){
            c = b + a; //f(m)=f(m-1)+f(m-2)
            a = b; // f(m-2) = f(m-1)
            b = c; // f(m-1) = f(m)
            n--;
        }
        return c;
    }
}

你可能感兴趣的:(leetcode,leetcode,java,算法)