leetcode hot 100 跳跃游戏2

45. 跳跃游戏 II

已解答

中等

相关标签

相关企业

给定一个长度为 n0 索引 整数数组 nums。初始位置为 nums[0]

每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。换句话说,如果你在 nums[i] 处,你可以跳转到任意 nums[i + j] 处:

  • 0 <= j <= nums[i]
  • i + j < n

返回到达 nums[n - 1] 的最小跳跃次数。生成的测试用例可以到达 nums[n - 1]

class Solution(object):
    def jump(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """

        max_t = 1
        count=0
        queue = [0]
        queue_next=[]
        while max_t<len(nums):
            for tmp in queue:
                if tmp + nums[tmp]+1>max_t:
                    end = min(len(nums),tmp+nums[tmp]+1)
                    for i in range(max_t,end):
                        
                        queue_next.append(i)
                    max_t = end
            count+=1
            queue = queue_next
            queue_next=[]

保存一个队列,是上一次能到达的最远距离

相关推荐
m0_6759882320 分钟前
Leetcode731. 我的日程安排表 II
python·算法·leetcode
benben04435 分钟前
Unity3D仿星露谷物语开发16之角色拾取道具
游戏·unity·游戏引擎
闻缺陷则喜何志丹41 分钟前
【C++动态规划】3144. 分割字符频率相等的最少子字符串|1917
c++·算法·动态规划·力扣·分割·子字符串·最少
想要AC的sjh1 小时前
【Leetcode】732. 我的日程安排表 III
c++·算法·leetcode·职场和发展
sophiaRachel1 小时前
1.1.3 插入排序
数据结构·算法·排序算法
不去幼儿园2 小时前
【强化学习】Double DQN(Double Deep Q-Network)算法
人工智能·算法·机器学习·强化学习·马尔科夫决策
今晚打老虎2 小时前
c++第13课
数据结构·c++·算法
haaaaaaarry2 小时前
快速排序排序方法演示及算法分析(附代码和实例)
算法·排序算法
慌糖2 小时前
关于数组的一些应用--------数组作函数的返回值(斐波那契数列数列的实现)
算法
Ritsu栗子2 小时前
代码随想录算法训练营day21
c++·算法