跳跃游戏
给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。
判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。
解题思路
我们从末尾倒着看,例如: [3,2,2,0,4]。
初始需要跳跃的步数为cnt=0,而最后一个元素4是我们需要到达的终点,可以不用考虑,从0开始。
- 元素
0等于cnt,无法跨越过去,于是需要跳跃的步数加1,此时cnt=1。继续下一个元素2。 - 元素
2大于cnt,可以跨越元素0,于是cnt赋值 0 后重新计数。 - 遍历完所有元素后,判断需要跨越的步数是否等于 0,等于 0 则表示可以跨越到最后的元素;否则不能跨越到最后的元素。
class