算法:跳跃游戏(js)

题目:力扣

思路:试想一下,若从第三位置可以跳到第五位置,那只要前面有一个点能跳到第三位置即可说明整体能跳到第五位置。

终点为最后一个点开始,看终点的前面是否存在一个点能跳到终点,若有这个点,此时终点为这个点,继续同样逻辑。

代码:

var canJump = function(nums) {
    let distance = nums.length - 1
    for (let i = nums.length - 2; i >= 0; i --) {
        if (nums[i] + i >= distance) {
            distance = i
        }
    }
    return distance === 0
};

结果:

猜你喜欢

转载自blog.csdn.net/qq_43119912/article/details/124138653
今日推荐