news 2026/9/4 12:47:38

Kimi LeetCode 45. 跳跃游戏 II Python3实现

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Kimi LeetCode 45. 跳跃游戏 II Python3实现

这是 LeetCode 45「跳跃游戏 II」的 Python3 实现,采用贪心算法,时间复杂度 O(n),空间复杂度 O(1)。

classSolution:defjump(self,nums:List[int])->int:n=len(nums)ifn==1:return0jumps=0# 已使用的跳跃次数current_end=0# 当前这步能到达的最远边界farthest=0# 下一步能到达的最远边界foriinrange(n-1):# 不需要遍历最后一个元素# 更新下一步能到达的最远位置farthest=max(farthest,i+nums[i])# 到达当前步的边界时,必须跳一步ifi==current_end:jumps+=1current_end=farthest# 提前退出:如果已经能到达或超过终点ifcurrent_end>=n-1:breakreturnjumps

核心思路

  1. 贪心策略:每一步都尽可能跳到最远,但不急着跳,而是先收集完当前步范围内的所有选择,从中挑出下一步能跳最远的那个位置。
  2. 双边界维护:
    • current_end:当前这步(第jumps步)能覆盖到的最远下标。
    • farthest:在当前覆盖范围内,再跳一步能到达的最远下标。
  3. 触发跳跃:当遍历指针i到达current_end时,说明当前步的所有选择已考察完毕,必须进行下一次跳跃,并将边界扩展到farthest

示例验证

输入: nums = [2, 3, 1, 1, 4] i=0: farthest = max(0, 0+2) = 2, i == current_end(0) → jumps=1, current_end=2 i=1: farthest = max(2, 1+3) = 4 i=2: farthest = max(4, 2+1) = 3, i == current_end(2) → jumps=2, current_end=4 (≥4, break) 输出: 2

为什么遍历到n-2即可?

因为题目保证一定能到达终点,当current_end >= n - 1时就已经能覆盖最后一个位置,无需再处理最后一个元素本身。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/4 12:44:51

Ice 完整实操指南:几分钟理顺你的 macOS 菜单栏

Ice 完整实操指南:几分钟理顺你的 macOS 菜单栏 【免费下载链接】Ice Powerful menu bar manager for macOS 项目地址: https://gitcode.com/GitHub_Trending/ice/Ice 您是否数过 Mac 顶部菜单栏里塞了多少图标?每装一个应用就多一个,…

作者头像 李华
网站建设 2026/9/4 12:43:31

信息系统与信息技术发展:从基础概念到现代架构的演进脉络

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/4 12:42:40

ZYNQ AX7020 FPGA PL端读写PS端DDR内存:AXI总线实战与软硬件协同设计

简介:本资源面向Zynq-7000系列FPGA开发者,聚焦PL端通过AXI4总线直接读写PS端DDR内存的核心技术实践,解决传统DMA方案协议复杂、灵活性差等痛点,适用于实时数据交互、嵌入式加速与软硬协同开发等典型场景。压缩包共1369个文件&…

作者头像 李华
网站建设 2026/9/4 12:42:21

iTerm2 终端配色方案完整指南:450+ 主题一次装好全平台终端

iTerm2 终端配色方案完整指南:450 主题一次装好全平台终端 【免费下载链接】iTerm2-Color-Schemes Over 450 terminal color schemes/themes for iTerm/iTerm2. Includes ports to Terminal, Konsole, PuTTY, Xresources, XRDB, Remmina, Termite, XFCE, Tilda, Fre…

作者头像 李华
网站建设 2026/9/4 12:36:40

别再瞎配了:450+ 终端配色方案从挑选到调优的完整路径

别再瞎配了:450 终端配色方案从挑选到调优的完整路径 【免费下载链接】iTerm2-Color-Schemes Over 450 terminal color schemes/themes for iTerm/iTerm2. Includes ports to Terminal, Konsole, PuTTY, Xresources, XRDB, Remmina, Termite, XFCE, Tilda, FreeBSD …

作者头像 李华
网站建设 2026/9/4 12:35:12

AI视频生成实战:从零搭建古风短剧自动化生产线

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华