本文共 516 字,大约阅读时间需要 1 分钟。
题目链接:
我们可以用r记录能跳到的最右边的点,然后用i遍历每个点能跳到的距离,然后更新能挑到最右边的点。
class Solution { public boolean canJump(int[] nums) { int r = 0; //能跳到最右边的点 for (int i = 0; i < nums.length; ++i) { if (i <= r) { //如果i小于等于r代表能到达i这个点 r = Math.max(r, i + nums[i]); //更新能达到的最右边的点 if (r >= nums.length - 1) //如果最右边的点超过了数组大小,返回true return true; } } return false; //说明达不到最右边,返回false }}
转载地址:http://bhrrz.baihongyu.com/