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

总结

暂无

相关推荐
Tairitsu_H1 小时前
[动态规划#1] 子数组 | 最大子数组和 | 环形子数组的最大和 | 乘积最大子数组 | 乘积为正数的最长子数组
算法·动态规划
凯瑟琳.奥古斯特1 小时前
动态调优IoU提升OCR文本合并精度
开发语言·python·算法
布莱克6052 小时前
A* 算法详解:从原理到实现
开发语言·c++·算法
段一凡-华北理工大学2 小时前
高炉炼铁机器视觉与智能识别十八讲~系列文章15:可靠性篇:防误报、容错与识别系统的鲁棒性设计
人工智能·算法·机器学习·高炉大模型·高炉机器视觉·高炉炼铁模型开发
某林2122 小时前
局部路径规划器 DWB:速度采样与评分权重的取值分析
人工智能·算法·架构·机器人·技术复盘
AI职业加油站2 小时前
模数共振行动解读|大模型应用工程师证书,匹配行业 RAG/Agent 落地人才需求
人工智能·学习·算法·职场和发展·职场发展
lengxuenong3 小时前
树状数组 · 信息学学习手册2-离散化与逆序对
c++·学习·算法
琳达爱分享3 小时前
五个线程同时去换 token,四个被踢下线:刷新接口其实不是幂等的
后端·算法·架构
十二3 小时前
【洛谷题解】P1115 最大子段和(前缀和 + 维护最小前缀)
数据结构·c++·算法·蓝桥杯
Xin7703 小时前
LeetCode 46. 全排列(回溯法)
leetcode