侧边栏壁纸
博主头像
阿里灰太狼博主等级

You have to believe in yourself . That's the secret of success.

  • 累计撰写 104 篇文章
  • 累计创建 50 个标签
  • 累计收到 12 条评论

目 录CONTENT

文章目录

leetcode-509. 斐波那契数

阿里灰太狼
2021-11-30 / 0 评论 / 0 点赞 / 104 阅读 / 345 字 / 正在检测是否收录...
温馨提示:
本文最后更新于 2021-11-30,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

cj77.pngcj78.png

JAVA解法

class Solution {
    public int fib(int n) {
        // 小于 2 为本身
        if (n < 2) {
            return n;
        }
        // F(n) = F(n−1) + F(n−2)
        int fn2 = 0, fn1 = 0, fn = 1;
        for (int i = 2; i <= n; ++i) {
            fn2 = fn1; 
            fn1 = fn; 
            fn = fn2 + fn1;
        }
        return fn;
    }
}

题解分析

斐波那契数列的特性:
F(0) = 0,F(1) = 1,当 n < 2 时,F(n) = F(n - 1) + F(n - 2),其中 n > 1

我们可以构造一个赋值,让前一个的值加上当前的值等于下一个的值,然后把当前值赋给前一个,下一个的值赋值给当前值,然后下一轮相加就符合 F(n) = F(n−1) + F(n−2) 实现斐波那契数列。

leetcode原题: 509. 斐波那契数

0

评论区