每日一题-贪心算法

122. 买卖股票的最佳时机 II - 力扣(LeetCode)

55. 跳跃游戏 - 力扣(LeetCode)

这个题目一开始肯定是会懵,就比如说一开始先跳几步,之后再怎么跳,其实我们就可以用最大范围来算就行了,用局部最优推出全局最优

复制代码
java 复制代码
class Solution {
    public boolean canJump(int[] nums) {
        if(nums.length == 1){
            return true;
        }
        int cun = 0;
        for(int i = 0;i <= cun;i++){
            cun = Math.max(cun,i+nums[i]);
            if(cun>=nums.length-1){
                return true;
            }
        }
        return false;
    }
}

45. 跳跃游戏 II - 力扣(LeetCode)

这道题目比上一道难不少,主要就是你需要计算那个最少跳跃数,

java 复制代码
class Solution {
    public int jump(int[] nums) {
        int result = 0;
        // 当前覆盖的最远距离下标
        int end = 0;
        // 下一步覆盖的最远距离下标
        int temp = 0;
        for (int i = 0; i <= end && end < nums.length - 1; ++i) {
            temp = Math.max(temp, i + nums[i]);
            // 可达位置的改变次数就是跳跃次数
            if (i == end) {
                end = temp;
                result++;
            }
        }
        return result;
    }
}
相关推荐
小欣加油32 分钟前
leetcode2161 根据给定数字划分数组
数据结构·c++·算法·leetcode·职场和发展
雨落在了我的手上39 分钟前
Java数据结构(四):List的介绍
数据结构
大都督会赢的41 分钟前
数据结构(2)--单链表
数据结构
Momo__zz1 小时前
零代码平台设计
算法·深度优先
cpp_25011 小时前
P2947 [USACO09MAR] Look Up S
数据结构·c++·算法·题解·单调栈·洛谷
水木流年追梦2 小时前
大模型入门-大模型优化方法13- MTP 多 token 输出、DCA 双块注意力
人工智能·分布式·算法·正则表达式·prompt
数据皮皮侠2 小时前
全国消协智慧 315 平台投诉信息数据库
大数据·人工智能·算法·百度·制造
8Qi82 小时前
LeetCode 115 & 392:不同子序列 / 判断子序列
算法·leetcode·职场和发展·动态规划
小蒋学算法2 小时前
算法-乘法表中第K小的数-二分
数据结构·算法
智者知已应修善业2 小时前
【51单片机8个LED,已经使用了D1D2,怎么样在不动D1D2的前提下实现D6~D8的流水灯】2024-1-19
c++·经验分享·笔记·算法·51单片机