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=[]

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

相关推荐
roman_日积跬步-终至千里3 分钟前
【算法3】二叉树中的最大路径和
算法
XUEYUAN521219 分钟前
IP 池调度算法实战:代理池负载均衡、健康检查与失效剔除机制(2026)
tcp/ip·算法·负载均衡
无小道20 分钟前
算法——问题转化
算法
evans在进步26 分钟前
LeetCode 53 最大子数组和:一次遍历掌握 Kadane 算法
算法·leetcode·职场和发展
小七在进步32 分钟前
数据结构:选择排序
数据结构·算法·排序算法
Nil2081 小时前
leetcode 230二叉搜索树中第k小的元素
算法·leetcode·职场和发展
被怪兽吃掉了1 小时前
5.2.1一维组数定义方式
开发语言·c++·算法
不会就选b1 小时前
Linux之线程进阶---封装信号量
数据结构·算法
不会就选b1 小时前
算法日常・每日刷题--<BFS&&最短路径>4
算法·宽度优先
旖旎夜光1 小时前
LeetCode 69:x 的平方根(二分查找) —— 题解
数据结构·c++·算法·leetcode·二分查找