1. 首页
  2. 软件开发
  3. day-18 跳跃游戏

day-18 跳跃游戏

  • 发布于 2024-09-26
  • 1 次阅读


参考了答案,遍历整个数组,同时用一个变量记录可以到达的最远距离ans=Math.max(ans,i+nums[i]);遍历结束后如果可以到达的最远距离大于等于数组长度减一(从零开始的)则可以到达最后一个下标。

code

class Solution {

    public boolean canJump(int[] nums) {

        int ans=0;//最远可达
        for(int i=0;i<nums.length;i++){

            if(ans>=i){

                ans=Math.max(ans,i+nums[i]);
            }else{

                break;
            }
        }
        if(ans>=nums.length-1) return true;
        return false;
    }
}

原文链接: https://blog.csdn.net/qq_53568730/article/details/136652986