首页/新闻资讯/正文详情

跳跃游戏系列

发布时间:2026/9/24 22:03:35 来源:云帆数科 栏目:资讯中心
跳跃游戏系列
引言这两道题属于贪心经典题型核心都是基于数组元素代表最大跳跃长度两道题题干相近但目标不同一题判断是否可达终点一题求到达终点的最小跳跃次数。基础篇跳跃游戏 I约束起始在下标 0nums [i] 代表当前位置向后最大跳跃距离判断是否能够到达最后一个下标。思路 1正向贪心方法维护max_reach记录当前能跳到的最远下标。遍历数组不断更新最远可达位置若遍历到某个位置i max_reach说明无法到达该位置直接返回 false若max_reach n-1可提前返回 true。复杂度时间 (O(n))空间 (O(1))class Solution { public: bool canJump(vectorint nums) { int max_reach 0; int n nums.size(); for(int i 0; i n; i){ if(i max_reach) return false; // 当前位置不可达 max_reach max(max_reach, i nums[i]); if(max_reach n-1) return true; } return true; } };思路 2动态规划方法dp[i]表示下标i是否可达。初始化dp[0]true遍历每个位置如果当前位置可达则标记它后续能跳到的位置全部可达。复杂度时间 (O(n^2))空间 (O(n))大数据会超时仅理解用。bool canJump(vectorint nums) { int n nums.size(); vectorbool dp(n, false); dp[0] true; for(int i0;in;i){ if(!dp[i]) continue; for(int j1;jnums[i];j){ if(ij n-1) return true; dp[ij] true; } } return dp[n-1]; }进阶篇跳跃游戏 II约束起始在下标 0nums [i] 代表当前位置向后最大跳跃距离保证一定可以到达终点求到达最后下标的最小跳跃次数。思路 1区间贪心方法维护 3 个变量当前区间边界end、全局最远可达位置max_reach、跳跃次数step。遍历到区间边界end时代表必须起跳一次更新边界为全局最远位置。复杂度时间 (O(n))空间 (O(1))class Solution { public: int jump(vectorint nums) { int n nums.size(); if(n 1) return 0; int step 0; int end 0; int max_reach 0; for(int i 0; i n-1; i){ max_reach max(max_reach, i nums[i]); if(i end){ // 走到区间边界必须起跳 step; end max_reach; } } return step; } };思路 2反向贪心方法从终点向前搜索找到最靠左的、能够跳到当前终点的位置更新终点为此位置跳跃次数 1直到终点回到下标 0。复杂度时间 (O(n^2))空间 (O(1))int jump(vectorint nums) { int pos nums.size()-1; int step 0; while(pos 0){ // 从左往右找第一个能跳到pos的下标 for(int i0; ipos; i){ if(i nums[i] pos){ pos i; step; break; } } } return step; }总结题号题目约束最优解法核心变量55跳跃游戏 I判断能否到达终点正向贪心max_reach45跳跃游戏 II求最小跳跃次数保证可达区间贪心end、max_reach、stepI只关心能不能到达 → 贪心维护最远可达下标II求最少跳跃次数 → 区间贪心到达区间边界才计数

相关推荐

AI识别系统让自动售货机“看懂“顾客在想什么~YH
AI识别系统让自动售货机“看懂“顾客在想什么~YH

你有没有遇到过这种情况:站在自动售货机前,想买的那款饮料刚好卖完了?或者反过来,你只是想看看,结果机器一直报错,折腾半天买不成?这些问题正在被AI视觉识别技术解决。现在的智能自动售货机&… · 2026/9/24 22:03:35

FastAPI异步接口中调用同步方法:阻塞原理与解决方案
FastAPI异步接口中调用同步方法:阻塞原理与解决方案

干过几年 FastAPI 的人,基本都会遇到一个看起来很奇怪的问题:在async def接口里兴致勃勃地写了个result some_sync_function(),然后发现整个服务像是被按了暂停键——所有请求都卡住了。更典型的是,当你试着在普通函数里用await去… · 2026/9/24 22:03:35

Vue+ECharts数据可视化:柱状图折线图实战与性能优化
Vue+ECharts数据可视化:柱状图折线图实战与性能优化

1. 项目整体设计与思路拆解1.1 为什么选 ECharts 而不是其他图表库在实际 Vue 项目里做数据可视化,图表库的选择其实是个很现实的问题。我最早做过一阵子Chart.js,后面也试过扛把子级别的D3.js,但最后长期留在项目里的还是ECharts。原因不复杂… · 2026/9/24 22:03:35

从三副本到纠删码:分布式存储容量与可靠性的实战迁移指南
从三副本到纠删码:分布式存储容量与可靠性的实战迁移指南

做存储运维这几年,我见过太多团队在处理“数据备份”这件事时,第一反应就是不停复制。明明买了一柜子硬盘,用三副本把每份数据存三遍,结果可用容量直接缩水三分之二;等真要恢复数据时,还可能撞上副本之间互… · 2026/9/24 23:57:13

改进二进制粒子群算法求解配电网重构:IEEE 33节点Matlab复现
改进二进制粒子群算法求解配电网重构:IEEE 33节点Matlab复现

做配电网优化的课题,绕不开IEEE 33节点这个标准算例;做配电网重构的算法选型,绕不开二进制粒子群算法(BPSO)。但很少有人第一次就能把两者干净利落地跑通——我也是踩了大半周的坑,才把参考论文里的“改进二… · 2026/9/24 23:57:13

STM32开发避坑指南:环境搭建、时钟、串口与调试的实战经验
STM32开发避坑指南:环境搭建、时钟、串口与调试的实战经验

STM32这套东西,从上学一路玩到做产品,前前后后折腾了快十年。每次项目出问题,十有八九不是芯片本身不行,而是开发调试的某个环节埋了雷。掉进去的时候头皮发麻,爬出来之后回头看,又觉得全是经验。所以这篇文… · 2026/9/24 23:57:13

基于NSGA-III的微电网多目标优化调度:Matlab建模与实现
基于NSGA-III的微电网多目标优化调度:Matlab建模与实现

做微电网优化调度,这几年算是电力系统方向里非常热门的一个课题。我最近正好用 Matlab 把“基于 NSGA-III 的微电网多目标优化调度”完整实现了一遍,从数学建模到算法设计再到仿真分析,踩了不少坑,也总结出一些可以直接拿过来用的… · 2026/9/24 23:57:13

应急移动电源动态调度模型:基于Matlab的配电网韧性复现实战
应急移动电源动态调度模型:基于Matlab的配电网韧性复现实战

台风过境后的凌晨,调度台电话就没停过。三条馈线同时跳闸,医院和通信基站全靠备电撑着,抢修队还在路上,而应急移动电源车却因为事先停错了位置,堵在积水的路段绕了一个多小时。这个场景我遇到过太多次——不是没有应急… · 2026/9/24 23:57:13

STM32调试新方案:VS Code + Cortex-Debug + OpenOCD实战指南
STM32调试新方案:VS Code + Cortex-Debug + OpenOCD实战指南

1. 为什么我最终把STM32调试从Keil搬到了VS Code说句实话,做嵌入式这些年,最开始我压根没想过用VS Code来调试STM32。入门的习惯就是Keil,打开软件、编译、点个Debug按钮、看个变量,流程也顺。但真正让我下决心换的,是… · 2026/9/24 23:57:00

基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程
基于YOLOv8的渔船作业监控系统:从环境搭建到边缘部署全流程

简介:这是一套面向计算机、人工智能、自动化等专业学生与教师的毕业设计级项目资源,围绕YOLOv8实现渔船作业监控系统,可用于毕设、课程设计、大作业或项目立项演示。压缩包共97个文件,约24.21MB,以70个Python源码文件为… · 2026/9/24 0:00:13

1D-CNN时间序列建模实战:从Conv1d原理到工业落地
1D-CNN时间序列建模实战:从Conv1d原理到工业落地

简介:面向时间序列数据建模的一维卷积神经网络完整实现,适合深度学习入门者及需要快速验证时序模型的研究者,能够从音频、文本、传感器或股价等序列中挖掘局部特征与时间依赖。压缩包体积很小,只有3KB,内含3个Python脚… · 2026/9/24 0:00:26

柔软的L:汉语语流中被忽视的舌肌张力控制
柔软的L:汉语语流中被忽视的舌肌张力控制

1. 这个“L”不是字母表里的L,而是舌尖上的L最近在几个方言群和语音教学社群里,反复看到有人发一句:“也说字母L:柔软的长舌”。初看以为是英语发音课笔记,点开才发现全是方言爱好者、播音系学生、语言康复师甚至戏曲演… · 2026/9/24 0:00:44

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码