Python描述 LeetCode 55. 跳跃游戏

Posted 亓官劼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python描述 LeetCode 55. 跳跃游戏相关的知识,希望对你有一定的参考价值。

Python描述 LeetCode 55. 跳跃游戏

  大家好,我是亓官劼(qí guān jié ),在【亓官劼】公众号、CSDN、GitHub、B站等平台分享一些技术博文,主要包括前端开发、python后端开发、小程序开发、数据结构与算法、docker、Linux常用运维、NLP等相关技术博文,时光荏苒,未来可期,加油~

  如果喜欢博主的文章可以关注博主的个人公众号【亓官劼】(qí guān jié),里面的文章更全更新更快。如果有需要找博主的话可以在公众号后台留言,我会尽快回复消息.


本文原创为【亓官劼】(qí guān jié ),请大家支持原创,部分平台一直在恶意盗取博主的文章!!! 全部文章请关注微信公众号【亓官劼】。

题目

给定一个非负整数数组 nums ,你最初位于数组的 第一个下标

数组中的每个元素代表你在该位置可以跳跃的最大长度。

判断你是否能够到达最后一个下标。

示例 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 <= 3 * 104
  • 0 <= nums[i] <= 105

Python描述

向前走,同时更新可以达到的最远距离,判断最后是否可以走到n-1即可

class Solution:
    def canJump(self, nums: List[int]) -> bool:
        n,max_end,i = len(nums),nums[0],0
        while i < n-1 and i < max_end:
            i += 1
            max_end = max(nums[i]+i,max_end)
        return i == n-1

以上是关于Python描述 LeetCode 55. 跳跃游戏的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 55. 跳跃游戏

LeetCode:跳跃游戏55

leetcode55 跳跃游戏(Medium)

[leetcode] 55. 跳跃游戏

leetcode55跳跃游戏

LeetCode.55(跳跃游戏) - 中等