LintCode 117. 跳跃游戏 II JavaScript算法

描述

给出一个非负整数数组,你最初定位在数组的第一个位置。

数组中的每个元素代表你在那个位置可以跳跃的最大长度。

你的目标是使用最少的跳跃次数到达数组的最后一个位置。

样例

输入 : [2,3,1,1,4]
输出 : 2
解释 : 到达最后位置的最小跳跃次数是2(从下标01跳跃1个距离长度,然后跳跃3个距离长度到最后位置)

解析

const jump=A=>{
    len=A.length,b=0,c=0,f=0
    for(let i=0;i<len-1;i++){
        f=Math.max(f,A[i]+i)
        if(i===b){
            b=f
            c++
        }
    }
    return c
}

运行结果

在这里插入图片描述

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/SmallTeddy/article/details/108510741