55 跳跃游戏

作者: zhaojinhui | 来源:发表于2020-10-01 03:33 被阅读0次

题意:给定一个数组,返回是否能跳完最后一个数

思路:

  1. 定义一个当先最远能跳到的数的边界border
  2. 遍历数组,每次更新可跳跃的最远border
  3. 如果当前元素值是0且不是最后一个元素,且border只能遍历到不超过当前元素,返回false
  4. 如果遍历完每一个元素返回true

思想:普通array遍历

复杂度:时间O(n),空间O(1)

class Solution {
    public boolean canJump(int[] nums) {
        int border = 0;
        int len = nums.length;
        for(int i=0;i<len;i++) {
            int cur = i+nums[i];
            if(nums[i] == 0 && border <= i && border != len - 1) {
                return false;
            }
            border = Math.max(cur, border);
        }
        return true;
    }
}

相关文章

  • 55跳跃游戏

    题目描述 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大长度。 ...

  • 55 跳跃游戏

    题意:给定一个数组,返回是否能跳完最后一个数 思路: 定义一个当先最远能跳到的数的边界border 遍历数组,每次...

  • 55.跳跃游戏

    ···class Solution {public boolean canJump(int[] nums) {in...

  • 55.跳跃游戏

    题目给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否...

  • 55. 跳跃游戏

    leetcode

  • LeetCode 55 跳跃游戏

    55. 跳跃游戏 给定一个非负整数数组,你最初位于数组的第一个位置。 数组中的每个元素代表你在该位置可以跳跃的最大...

  • 55. 跳跃游戏

    给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。=判断你是否能...

  • 55.跳跃游戏

    题目描述 给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断...

  • 55. 跳跃游戏

    题目描述 给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断...

  • 55. 跳跃游戏

    基本思路不如看代码注释

网友评论

    本文标题:55 跳跃游戏

    本文链接:https://www.haomeiwen.com/subject/uspedktx.html