【算法刷题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];
    }
}

总结

暂无

相关推荐
旖-旎11 分钟前
深搜练习(单词搜索)(12)
c++·算法·深度优先·力扣
企客宝CRM1 小时前
2026年中小企业CRM选型指南:企客宝CRM处于什么位置?
android·算法·企业微信·rxjava·crm
橙淮1 小时前
二叉树核心概念与Java实现详解
数据结构·算法
米罗篮2 小时前
DSU并查集 & 拓展欧几里得-逆元
c++·经验分享·笔记·算法·青少年编程
橙淮2 小时前
双指针法:高效算法解题的利器
算法
初心未改HD2 小时前
深度学习之MLP与反向传播算法详解
人工智能·深度学习·算法
刀法如飞2 小时前
【Go 字符串查找的 20 种实现方式,用不同思路解决问题】
人工智能·算法·go
程序员雷欧3 小时前
大厂OS面试高频题
面试·职场和发展
技术小黑4 小时前
CNN算法实战系列03 | DenseNet121算法实战与解析
pytorch·深度学习·算法·cnn