斐波那契数(C++)

简介: 斐波那契数(C++)

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

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

给定 n,请计算 F(n)。

示例 1:

输入:n = 2
输出:1
解释:F(2) = F(1) + F(0) = 1 + 0 = 1

示例 2:

输入:n = 3
输出:2
解释:F(3) = F(2) + F(1) = 1 + 1 = 2

示例 3:

输入:n = 4
输出:3
解释:F(4) = F(3) + F(2) = 2 + 1 = 3

提示:

  • 0 <= n <= 30

我的代码:

class Solution {
public:
    int fib(int n) {
        int l = 0, r = 1;
        if (n == 0) return 0;
        if (n <= 2) return 1;
        for (int i = 2; i <= n; ++ i)
        {
            int t = l;
            l = r;
            r = l + t;
        }
        return r;
    }
};


相关文章
|
6月前
|
Java
leetcode-509:斐波那契数
leetcode-509:斐波那契数
478 0
|
6月前
|
Java C++
简单斐波那契
简单斐波那契
77 0
|
6月前
9.求斐波那契Fibonacci数列通项
9.求斐波那契Fibonacci数列通项
33 0
|
6月前
|
机器学习/深度学习 算法
|
6月前
斐波那契(快速矩阵幂)
斐波那契(快速矩阵幂)
33 0
1172:求10000以内n的阶乘
1172:求10000以内n的阶乘
158 0
|
11月前
leetcode 509 斐波那契数
今天重新看了下动态规划, 它和递归的区别就是,它是自下而上的。 还了解到状态压缩 如果我们发现每次状态转移只需要 DP table 中的一部分,那么可以尝试用状态压缩来缩小 DP table 的大小,只记录必要的数据 于是就刷了这道简答题,用到了状态压缩
38 0
|
11月前
|
算法 测试技术 C#
C++二分查找算法:阶乘函数后 K 个零
C++二分查找算法:阶乘函数后 K 个零
Fibonacci数列的多种求法
Fibonacci数列的多种求法
74 0