【算法刷题day38】Leetcode:509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯

文章目录

草稿图网站
java的Deque

Leetcode 509. 斐波那契数

题目: 509. 斐波那契数
解析: 代码随想录解析

解题思路

hello world版动态规划

代码

java 复制代码
class Solution {
    public int fib(int n) {
        if (n < 2)  return n;
        return fib(n-1) + fib(n-2);
    }
}

//动规
class Solution {
    public int fib(int n) {
        if (n <= 1) return n;
        int []dp = new int[n+1];
        dp[1] = 1;
        for (int i = 2; i <= n; i++)
            dp[i] = dp[i-1] + dp[i-2];
        return dp[n];
    }
}

总结

暂无

Leetcode 70. 爬楼梯

题目: 70. 爬楼梯
解析: 代码随想录解析

解题思路

和上面的一样

代码

java 复制代码
class Solution {
    public int climbStairs(int n) {
        if (n <= 2) return n;
        int []dp = new int[n+1];
        dp[1] = 1;
        dp[2] = 2;
        for (int i = 3; i <=n ; i++) {
            dp[i] = dp[i-1] + dp[i-2];
        }
        return dp[n];
    }
}

总结

暂无

Leetcode 746. 使用最小花费爬楼梯

题目: 746. 使用最小花费爬楼梯
解析: 代码随想录解析

解题思路

和上面的一样

代码

java 复制代码
class Solution {
    public int minCostClimbingStairs(int[] cost) {
        int []dp = new int[cost.length + 1];
        for (int i = 2; i <= cost.length; i++) {
            dp[i] = Math.min(dp[i-1] + cost[i-1], dp[i-2] + cost[i-2]);
        }
        return dp[cost.length];
    }
}

总结

暂无

相关推荐
ChillJavaGuy7 分钟前
常见限流算法详解与对比
java·算法·限流算法
sali-tec10 分钟前
C# 基于halcon的视觉工作流-章34-环状测量
开发语言·图像处理·算法·计算机视觉·c#
你怎么知道我是队长1 小时前
C语言---循环结构
c语言·开发语言·算法
艾醒1 小时前
大模型面试题剖析:RAG中的文本分割策略
人工智能·算法
纪元A梦4 小时前
贪心算法应用:K-Means++初始化详解
算法·贪心算法·kmeans
_不会dp不改名_4 小时前
leetcode_21 合并两个有序链表
算法·leetcode·链表
mark-puls4 小时前
C语言打印爱心
c语言·开发语言·算法
Python技术极客4 小时前
将 Python 应用打包成 exe 软件,仅需一行代码搞定!
算法
吃着火锅x唱着歌4 小时前
LeetCode 3302.字典序最小的合法序列
leetcode
睡不醒的kun4 小时前
leetcode算法刷题的第三十四天
数据结构·c++·算法·leetcode·职场和发展·贪心算法·动态规划