最初没读懂题目,后来发现这道题好像数组中没有0就一定能够到达。

可以从最后一个数开始,假如最后一个数的前一个数能够到达最一个数,我们就可以将目的地更新为最后一个的前一个数,假如最后一个数的下标为n,那么当n-1的数能够到达n时,那么前面的数如果能够到达n-1,那么也就可以到达n,而一个位置要到达另一个位置,只需要判断当前位置加上能走的最大步数大于等于目标位置就行了,一直这样,最后看最终位置是否是0就可以了,其实也是贪心算法,代码如下:

55.跳跃游戏

 

不过看题解的时候说这道题可能想考一个动态规划。

动态规划的时间复杂度为N^2,耗时的确多了很多,不过我感觉还是要用一下动态规划,毕竟可加深对动态规划的理解

55.跳跃游戏

相关文章: