【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判断如果当前位置到达,并且当前位置+跳数>最远位置

然后更新最远能到达位置

相关推荐
散峰而望3 分钟前
【数据结构】假如数据排排坐:顺序表的秩序世界
java·c语言·开发语言·数据结构·c++·算法·github
海棠AI实验室5 分钟前
第十五章 字典与哈希:高效索引与去重
算法·哈希算法
独自破碎E11 分钟前
动态规划-打家劫舍I-II
算法·动态规划
圣保罗的大教堂14 分钟前
leetcode 3507. 移除最小数对使数组有序 I
leetcode
尽兴-32 分钟前
JVM垃圾收集器与三色标记算法详解
java·jvm·算法·cms·gc·g1·三色标记算法
沐欣工作室_lvyiyi33 分钟前
IIR数字带通滤波器(论文+源码)
算法·matlab·毕业设计·数字滤波器
zh_xuan34 分钟前
LeeCode 61. 旋转链表
数据结构·c++·算法·leetcode·链表
tobias.b35 分钟前
408真题解析-2010-8-数据结构-拓扑排序
数据结构·算法·计算机考研·408真题解析
源代码•宸44 分钟前
Golang原理剖析(彻底理解Go语言栈内存/堆内存、Go内存管理)
经验分享·后端·算法·面试·golang·span·mheap
黎子越1 小时前
python循环相关联系
开发语言·python·算法