212.贪心算法:跳跃游戏(力扣)

代码解决

cpp 复制代码
class Solution {
public:
    bool canJump(vector<int>& nums) 
    {
        int cover = 0;  // 初始化覆盖范围
        if (nums.size() == 1) return true;  // 如果数组长度为1,直接返回 true
        
        // 遍历数组,直到当前覆盖范围
        for (int i = 0; i <= cover; i++)
        {
            // 更新当前覆盖范围
            cover = max(i + nums[i], cover);
            
            // 如果覆盖范围达到或超过最后一个位置,返回 true
            if (cover >= nums.size() - 1) return true;
        }
        
        // 如果遍历完所有位置仍不能到达最后一个位置,返回 false
        return false;
    }
};

核心思想

这个算法使用贪心算法的思路,通过遍历数组,每一步更新能到达的最远位置。如果能到达或超过数组的最后一个位置,则返回 true,否则返回 false

相关推荐
梭七y4 小时前
【力扣hot100题】(032)排序链表
算法·leetcode·链表
SsummerC4 小时前
【leetcode100】数组中的第K个最大元素
python·算法·leetcode
编程绿豆侠4 小时前
力扣HOT100之链表:206. 反转链表
算法·leetcode·链表
记得早睡~7 小时前
leetcode51-N皇后
javascript·算法·leetcode·typescript
VX_CXsjNo17 小时前
免费送源码:Java+SSM+Android Studio 基于Android Studio游戏搜索app的设计与实现 计算机毕业设计原创定制
java·spring boot·spring·游戏·eclipse·android studio·android-studio
明月清了个风10 小时前
数据结构与算法学习笔记----贪心区间问题
笔记·学习·算法·贪心算法
luckyme_10 小时前
leetcode-代码随想录-哈希表-有效的字母异位词
算法·leetcode·散列表
luckyme_10 小时前
leetcode 代码随想录 数组-区间和
c++·算法·leetcode
jyyyx的算法博客11 小时前
Leetcode 857 -- 贪心 | 数学
算法·leetcode·贪心·嗜血
luckyme_12 小时前
leetcode-代码随想录-哈希表-哈希理论基础
leetcode·哈希算法·散列表