贪心算法-跳跃游戏

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

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

示例 1:

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

示例 2:

复制代码
输入:nums = [3,2,1,0,4]
输出:false
解释:无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。

提示:

  • 1 <= nums.length <= 104
  • 0 <= nums[i] <= 105

贪心在每次都要最多,注意看for循环代表了当前cout能走的最大路径,count代表了最多能走多少!!! 如果用nums.size的话就永远为ture了!如果是那样的话,对于第二个测试案例count的值输出就为3338!!!而且这样做法必定为ture!而如果换成count为最大值,则可以代表这样数组能遍历到哪,这个就是他贪心的地方,每次都要拿最大,看看能不能到达条件!!

class Solution {

public:

bool canJump(vector<int>& nums) {

int count =0;

if(nums.size()==1) return true;

for(int i=0;i<=count;i++){

count =max(i+numsi,count);

if(count>=nums.size()-1) return true;

}

return false;

}

};

相关推荐
张欣-男2 小时前
3分钟理解线性代数
线性代数·算法
白狐_7983 小时前
408 数据结构|外部排序优化:怎么减少时间开销
数据结构·算法
小白说大模型3 小时前
Hermes 全配置指南:从裸版到 AI Agent 天花板
大数据·人工智能·学习·算法·机器学习·数据挖掘
a187927218313 小时前
【算法】动态规划入门:从打家劫舍到状态设计的三堂课
算法·leetcode·动态规划·dp·回溯·暴力
谈资一本本3 小时前
电脑全能修复大师 Gilisoft Total Repair,智能检测修复系统、应用、游戏问题!DLL、DirectX、.NET运行库损坏修复+缺失自动补齐!
游戏·电脑·.net
程序员-Benothing11 小时前
H3 Max开放世界RPG:AI原生游戏,从“能生成“到“能玩“差了多远
游戏·ai-native
淡海水12 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
leobertlan13 小时前
好玩系列:训练一个神经网络模型指导小孩玩游戏2-大局观教练
算法
Tisfy13 小时前
LeetCode 3876.构造奇偶一致的数组 II:三种情况分类讨论(其实还是脑筋急转弯)
算法·leetcode·题解·脑筋急转弯
乐迪信息14 小时前
智慧港口船舶AI算法实现在线状态监测
大数据·人工智能·深度学习·算法·计算机视觉