HOT100题打卡第38天——贪心算法

55. 跳跃游戏

给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。

判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false

示例 1:

复制代码
输入:nums = [2,3,1,1,4]
输出:true
解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。

分析题目

要判断是否能到达最后一个下标,直接倒序遍历数组,从最后一个下标开始,遍历前面是否存在某个位置 i 能到达当前下标,如果存在的话就再往前找,是否存在某个位置能到达i位置,这样不断往前遍历,如果最终位置能到达0索引,说明从0索引能够到达最后一个下标

代码

java 复制代码
class Solution {
    public boolean canJump(int[] nums) {
        int lastPosition = nums.length - 1;
        for (int i = lastPosition; i >= 0; i--) {
            if (i + nums[i] >= lastPosition) {
                lastPosition = i;
            }

        }

        return lastPosition == 0;

    }
}
相关推荐
数字杂技师6 分钟前
每条推荐都很准,为什么我还是越刷越无聊?
算法
兰令水9 分钟前
hot100【acm版】【2026.7.14打卡-java版本】
java·数据结构·算法·leetcode·面试
cpp_250133 分钟前
P10098 [ROIR 2023] 地铁建设 (Day 2)
数据结构·c++·算法·贪心·二分答案·洛谷题解
阳明山水1 小时前
TimesFM与Moirai MoE零样本预测解析
人工智能·深度学习·算法·机器学习·架构
铅笔侠_小龙虾2 小时前
Rust 学习(2)-变量、常量与 shadowing
学习·算法·rust
AI科技星2 小时前
基于全域数学公理体系的三元极值题最简求解法【乖乖数学】
线性代数·算法·游戏·决策树·机器学习·乖乖数学·全域数学
大鱼>2 小时前
宠物异常行为预警系统:边缘计算与实时检测
人工智能·深度学习·算法·iot·宠物
apcipot_rain3 小时前
某双非机试真题
算法
米尔的可达鸭4 小时前
深入操作系统 Socket 底层:套接字控制块、FD映射、阻塞IO核心完整实现
arm开发·数据结构·websocket·网络协议·算法·架构·安全架构
tachibana24 小时前
hot100 课程表(207)
java·数据结构·算法·leetcode