文章作者:Tyan
博客:noahsnail.com | CSDN | 简书
1. Description
2. Solution
解析:Version 1,采用深度优先搜索,使用visited
记录遍历过的索引及对应的跳跃次数,如果当前索引遍历过,直接返回对应的跳跃次数,分别遍历其左右两侧,取左右两侧最大的跳跃次数,返回最大跳跃次数加上当前元素的跳跃次数1
。Version 2对数组先排序,获得排序后的索引,然后从最小值的索引开始寻找左右两侧最大跳跃次数,这样每个数左右两侧比其小的数的跳跃次数都已计算出来,所有元素的初始默认跳跃次数为1
,依次更新dp[current]
,最后返回最大跳跃次数。
- Version 1
1 | class Solution: |
- Version 2
1 | class Solution: |