【leetcode--55.跳跃游戏】

思路:贪心算法,尽可能达到最远的位置(因为如果可以达到某个位置,一定可以达到之前的位置)

复制代码
class Solution:
    def canJump(self, nums: List[int]) -> bool:
        max_i = 0
        for i ,jump in enumerate(nums):
            if max_i>=i and (i + jump) > max_i:
                max_i = i + jump
        return max_i >= i

这里的return max_i >= i,注意可以换成return max_i >= len(nums)-1.

首先初始化当前能到达的最远距离,i为当前位置,jump是当前位置的跳数

if判断如果当前位置到达,并且当前位置+跳数>最远位置

然后更新最远能到达位置

相关推荐
wabs66616 分钟前
关于动态规划【力扣1143.最长公共子序列的思考】
算法·leetcode·动态规划
剑挑星河月37 分钟前
54.螺旋矩阵
java·算法·leetcode·矩阵
Robot_Nav1 小时前
MPPI 局部规划器实验设计讲解
人工智能·算法·mppi
mingo_敏2 小时前
Mean-Teacher 均值教师自训练框架详解
算法·均值算法
星空露珠2 小时前
迷你世界UGc3.0脚本Wiki[剧情动画模块管理接口 Timeline]
开发语言·数据结构·算法·游戏·lua
笨笨没好名字2 小时前
Leetcode刷题python3版第一周(下)
linux·算法·leetcode
手写码匠2 小时前
手写 LLM 安全护栏:从内容审核到越狱防御的完整实现
人工智能·深度学习·算法·aigc
luj_17682 小时前
草酸与烟酸对消化及糖代谢的影响解析
服务器·c语言·开发语言·经验分享·算法
青风972 小时前
16-ADAPTRACK:基于自适应阈值的多目标跟踪匹配算法
人工智能·算法·目标跟踪
汤姆yu3 小时前
macOS系统下Aider完整安装、配置与实战使用教程
大数据·人工智能·算法·macos·github·copilot