栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

力扣 509. 斐波那契数

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

力扣 509. 斐波那契数

题目

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

F(0) = 0,F(1) = 1
F(n) = F(n - 1) + F(n - 2),其中 n > 1
给你 n ,请计算 F(n) 。

示例

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

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

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

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/fibonacci-number
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

实现

方法1:python

递归超时,老实算。

class Solution:
    def fib(self, n: int) -> int:
        if n==0: return 0
        elif n==1: return 1
        res=[0,1]
        for i in range(2,n+1):
            res.append(res[i-1]+res[i-2])
        return res[-1]


方法2:java

list的取值方式和python不太一样哈,要用get(索引)

class Solution {
    public int fib(int n) {
        if (n==0) return 0;
        if (n==1) return 1;
        linkedList res = new linkedList<>();
        res.add(0);
        res.add(1);

        for (int i=2; i<=n; i++){
            res.add(res.get(i-1)+res.get(i-2));
        }

        return res.get(n);
    }
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/321971.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号