首页 > 其他分享 >【leetcode-动态规划】斐波那契数

【leetcode-动态规划】斐波那契数

时间:2023-03-23 15:00:47浏览次数:40  
标签:契数 示例 int sum 斐波 leetcode 输入


题目:

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


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


给定 N,计算 F(N)

 

示例 1:


输入:2

输出:1

解释:F(2) = F(1) + F(0) = 1 + 0 = 1.


示例 2:


输入:3

输出:2

解释:F(3) = F(2) + F(1) = 1 + 1 = 2.


示例 3:


输入:4

输出:3

解释:F(4) = F(3) + F(2) = 2 + 1 = 3.


 

提示:

  • 0 ≤ N ≤ 30

思路:

这个用递归很好解,但是时间复杂度比较高,容易超时, 用动态规划来解

java代码:

class Solution {
    public int fib(int N) {

        if(N==0 || N==1) {
            return N;
        }
        
        int[] sum = new int[N+1];
        sum[0] = 0; sum[1]=1;
        for(int i=2;i<=N;i++) {
            sum[i]=sum[i-1]+sum[i-2];
        }
        
        return sum[N];
        
    }
}

 

由于水平有限,文章中难免会有一些错误,有纰漏之处恳请各位大佬不吝赐教!

及时更新最新文章和学习资料,一起来学习:

【leetcode-动态规划】斐波那契数_链表


标签:契数,示例,int,sum,斐波,leetcode,输入
From: https://blog.51cto.com/u_6813689/6145103

相关文章