`

Jump Game

阅读更多
Given an array of non-negative integers, you are initially positioned at the first index of the array.

Each element in the array represents your maximum jump length at that position.

Determine if you are able to reach the last index.

For example:
A = [2,3,1,1,4], return true.

A = [3,2,1,0,4], return false.

我们可以用贪心算法来解决。维护一个指针,指针不断的靠近终点,每前进一步指针的值都减1,指针的值根据经过的元素而更新。代码如下:
public class Solution {
    public boolean canJump(int[] nums) {
        if(nums == null || nums.length == 0) return false;
        int cur = nums[0];
        for(int i = 1; i < nums.length; i++) {
            if(cur >= nums.length - 1) return true;
            //每前进一步,cur的值就减1
            cur --;
            if(cur < 0) return false;
            //cur移动到了nums[i]的位置,查看是否更新cur的值
            if(nums[i] > cur) {
                cur = nums[i];
            }
            if(cur == 0 && i < nums.length - 1) return false;
        }
        return true;
    }
}
分享到:
评论

相关推荐

    java-leetcode题解之Jump Game II.java

    Java题解之Jump Game II涉及编写一个Java程序来解决LeetCode上的Jump Game II问题。在这个Java程序中,我们可以使用贪心算法的解法,每次都在当前可跳范围内找到能跳到最远位置的点作为下一步的目标,以此来保证跳跃...

    fuxuemingzhu#Leetcode-Solution-All#55. Jump Game 跳跃游戏1

    1.贪心算法中,作出的每步贪心决策都无法改变,因为贪心策略是由上一步的最优解推导下一步的最优解,而上一步之前的最优解则不作保留 2.由(1)中的介绍,可以知道贪

    java-leetcode题解之Jump Game.java

    在Java中,LeetCode题解之Jump Game是解决算法问题的一个典型示例,此题目通常被归纳为贪心算法的范畴。该问题主要关注的是在一个数组中,规定了每次可以跳的最大步数,判断从起始位置是否能够到达数组的最后一个...

    jumpgame源码

    jumpgame untiy项目源码

    wechat_jump_game-master.zip_python 小游戏_wechat. jump game_wechat_

    【微信跳一跳小游戏Python实现详解】 微信跳一跳是一款风靡一时的微信小程序游戏,玩家需要控制小人精准地跳跃到每个平台上,积累分数。本文将深入探讨如何使用Python编程语言来自动化实现微信跳一跳的小游戏过程。...

    45jumpgame2.cpp

    leetcode45题leetcode45题leetcode45题leetcode45题leetcode45题leetcode45题leetcode45题leetcode45题leetcode45题leetcode45题

    jumpGame仿简易版跳一跳.rar

    本简易版 跳一跳使用Cocos来完成编写。 (使用js进行逻辑编写) 对应csdn博客链接:https://blog.csdn.net/weixin_43388844/article/details/96730842

    jumpGame:给我孩子们的跳跃游戏

    【标题】:“jumpGame:为孩子们设计的跳跃游戏” 【描述】:“jumpGame是一款专为孩子们设计的跳棋游戏,旨在提供一个寓教于乐的平台,帮助他们在娱乐中提升逻辑思维和策略规划能力。” 【详细知识点】: 1. **...

    JumpGame

    《JumpGame》是一款基于C#编程语言开发的平台跳跃类游戏。在这款游戏中,玩家需要控制角色通过一系列的跳跃动作,克服各种障碍,达到关卡的终点。C#是Microsoft公司推出的一种面向对象的、现代的编程语言,广泛应用...

    C语言-leetcode题解之55-jump-game.c

    最后,需要注意的是,由于本题的输入和输出都是标准的数据结构,我们不需要在主函数中添加额外的读取和打印代码,只需要调用jumpGame函数,并传入相应的参数即可。 总的来看,这道题是对贪心算法理解和实现能力的一...

    C语言-leetcode题解之45-jump-game-ii.c

    其中,编号为45的题目“Jump Game II”要求参与者编写一个函数,实现找到从数组的起始位置到达最后一个位置最少跳跃次数的算法。这个题目虽然简单,但是非常考验程序员的逻辑思维和算法设计能力。 在解决这个问题的...

    js-leetcode题解之55-jump-game.js

    跳游戏(Jump Game)是算法面试中常见的题目之一。在这个问题中,通常给出一个数组,数组中的每个元素表示从该位置能跳跃的最大步数,玩家从数组的第一个元素开始跳跃,目标是到达数组的最后一个元素。题目的变种...

    Doodle Jump Game Online Play [YourWebGame]-crx插件

    Yaaa,您喜欢Jumping Game,所以现在就玩在线Doodle Jump游戏[更新]嬉皮乐使您跃入Doodle Jump榜首。 嬉皮在Doodle Jump中跳到顶部。 这款激动人心的平台游戏可让您向上跳跃到无限远,抓住助力,避免途中遇到野兽。 ...

    wechat_jump_game-master.rar_Jump!_安卓 模拟_安卓模拟器_跳一跳安卓_跳一跳辅助

    从“wechat_jump_game-master.rar”的文件名中可以推测,这个压缩包包含的可能是这个辅助工具项目的主代码库或源代码文件夹。在成功解压后,用户或许会发现其中包含了各类代码文件、配置文件和使用说明文档等。这些...

    使用 HTML5、JavaScript 编写的 Flappy Jump 游戏及其源代码.zip

    Flappy Jump Game 项目是使用 HTML5、Javascript 和 CSS 制作的。谈到游戏玩法,它有点类似于最令人上瘾的游戏之一Flappy Bird,这个简单的游戏使用了它的概念,即玩家必须从一个地方切换到另一个地方。鸟儿不停地拍...

    wechat_jump_game-master.zip_JUMP_py_wechat_jump_game_跳一跳

    而“wechat_jump_game-master.zip_JUMP_py_wechat_jump_game_跳一跳”这个压缩包,提供了一个用Python编写的自动游玩“跳一跳”的源代码,对于想要学习自动化控制、图像识别和游戏策略的开发者来说,是一份宝贵的...

    Doodle Jump Game-crx插件

    语言:Bahasa Melayu,Deutsch,English,English (UK),English (United States),Français,Nederlands,Norsk,Tiếng Việt,Türkçe,català,dansk,eesti,español,español (Latinoamérica),hrvatski,italiano,latvie...

    leetcode卡-Jump-Game-IV:跳跃游戏-IV

    在“Jump-Game-IV-main”文件中,可能包含了实现这个解决方案的源代码。通过分析和学习这段代码,我们可以更深入地理解上述概念,并了解如何在实际编程中应用这些算法。然而,为了适应大测试用例,可能需要进一步...

    5款Unity3D制作的小游戏实例,新手必备(看评论酌情下载)

    2. **Game 2 - Jump game** 跳跃游戏通常是平台跳跃类,玩家需要控制角色跳跃避开障碍物。这类游戏的核心技术包括角色控制器的编写、地形导航、碰撞检测以及时间管理(如跳跃力的计算)。Unity3D提供了Character...

    java-leetcode题解之055-Jump-Game

    java入门 java_leetcode题解之055_Jump_Game

Global site tag (gtag.js) - Google Analytics