Leetcode 45 跳跃游戏 II

题意理解

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

        每个元素 nums[i] 表示从索引 i 向前跳转的最大长度。

        还是从初始坐标i=0的位置到达最后一个元素,但是问题不是能不能跳到,而是最少几步能跳到最后一个元素

        目标:求跳到末尾元素的最小步数。

解题思路

 如上面的例子所示:

        两种方式都能跳到末尾,但是最小步数是2.

        要用贪心法解题,就要明确什么是局部最优,什么是全局最优。

        这道题里,全局最优到达末尾元素步数尽可能小,则要求每步尽可能大一些

        所以局部最优为:使当前步,尽可能的跳到较远的位置上

        我们使用两个量:cur表达当前能到达的最远距离,next表达下一步能到达的最远距离。

        我们在这个cur范围内挑选第二步,让两步尽可能达到尽可能远的位置。

1.贪心解题

我们用count来记录步数,cur来记录当前可达的最远位置,next表达下一步能到达的最远位置。

若再探索一步就覆盖到末尾元素,则count+1,结束

若再探索最远一步仍就到不了末尾元素,则count++,探索下下一步的最远位置。

class Solution {public int jump(int[] nums) {if(nums.length==1) return 0;//只有一个末尾元素,不用走也能到int count=0;int cur=0;int next=0;for(int i=0;i<nums.length;i++){next=Math.max(next,i+nums[i]);//当前步探索位置到达边界if(next>=nums.length-1){count++;break;}if(i==cur){count++;cur=next;}}return count;}
}

2.分析

时间复杂度:O(n)

空间复杂度:O(n)

n为输入数组的长度。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/241095.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Javascript:DOM对象

Javascript&#xff1a;DOM-获取对象 DOM与JavaScript的关系什么是DOMDOM相关概念DOM 树DOM 节点DOM对象 获取DOM对象通过CSS选择器来获取DOM对象其他方式 操作DOM对象控制DOM对象内容控制DOM对象属性控制HTML标签属性控制CSS样式通过style属性操作CSS通过类名(className) 操作…

详解KMP算法

KMP算法应该是每一本《数据结构》书都会讲的&#xff0c;算是知名度最高的算法之一了&#xff0c;但很可惜&#xff0c;我大二那年压根就没看懂过~~~ 之后也在很多地方也都经常看到讲解KMP算法的文章&#xff0c;看久了好像也知道是怎么一回事&#xff0c;但总感觉有些地方自己…

【QT八股文】系列之篇章1 | QT的基础知识及事件/机制

【QT八股文】系列之篇章1 | QT的基础知识及事件/机制 前言0. 基础Qt/PyQt5介绍/关联Qt的优缺点&#xff08;为什么要用qt来做界面&#xff09;Qt 的核心机制请简要介绍一下Qt中的主窗口&#xff08;MainWindow&#xff09;类&#xff0c;它有哪些重要的函数和成员变量&#xff…

【ArduinoOTA无线(OTA)更新的EASY指南】

【ArduinoOTA无线&#xff08;OTA&#xff09;更新的EASY指南】 1. 前言2. 了解 ESP32 的 ArduinoOTA3. 无线更新案例4. ArduinoOTA入门5. 安装必备组件6. 设置硬件7. ESP32 OTA 的最低代码8. 按照我们的流程学习Arduino编程➜9. 这对OTA来说非常重要10. 通过无线方式将草图上传…

携手河南恩坤德,共创养殖新篇章

在这个充满机遇与挑战的时代&#xff0c;养殖业正在经历一场前所未有的变革。作为养殖户&#xff0c;您需要一个能够与您共同应对变革、共创未来的合作伙伴。河南恩坤德农业正是这样一个值得信赖的伙伴&#xff0c;我们携手共创养殖新篇章。 河南恩坤德农业以客户需求为导向&am…

Registry存储helm OCI图像 和自签名证书

Registry存储helm OCI图像 和自签名证书 官网 # https://github.com/distribution/distribution## helm https://helm.sh/zh/docs/topics/registries/ 先决条件 helm oci 模式是基于 https上传,所以我们能需要对仓库添加https,并添加证书的信任。 生成Nginx的自签名证书 文章…

Ai图片处理

Ai也可以直接导入PS文件&#xff0c;只不过需要进行一个相关的选择&#xff0c;一般来说是将图层转化为对象 第二个为图层拼合为单个图像&#xff08;不常用&#xff09; 第三个则是将隐藏的图片也进行显示 如果你觉得图片的信息的过少好想插入其他的图片&#xff0c;可以选择…

【mongoose】 Model.create() no longer accepts a callback 报错解决

在最新版的 mongoose 操作 MongoDB 数据库的时候&#xff0c;当我们插入一条数据时候&#xff0c;会报错 &#xff1a;Model.create() no longer accepts a callback&#xff0c;看了很多文章都说是&#xff0c;版本太高&#xff0c;都妥协选择了降低回旧版本&#xff0c;但我就…

消息队列之关于如何实现延时队列

一、延时队列的应用 1.1 什么是延时队列&#xff1f; 顾名思义&#xff1a;首先它要具有队列的特性&#xff0c;再给它附加一个延迟消费队列消息的功能&#xff0c;也就是说可以指定队列中的消息在哪个时间点被消费。 延时队列在项目中的应用还是比较多的&#xff0c;尤其像…

设计模式之-模板方法模式,通俗易懂快速理解,以及模板方法模式的使用场景

系列文章目录 设计模式之-6大设计原则简单易懂的理解以及它们的适用场景和代码示列 设计模式之-单列设计模式&#xff0c;5种单例设计模式使用场景以及它们的优缺点 设计模式之-3种常见的工厂模式简单工厂模式、工厂方法模式和抽象工厂模式&#xff0c;每一种模式的概念、使用…

【matlab】绘制竖状单组渐变柱状图

【matlab】绘制竖状单组渐变柱状图 % matlab绘制渐变柱状图 clear;clc;close all; x1:100; a[]; for i1:length(x) if mod(i,2)0 i-i; end a[a i]; end close all; b0.8; for nm3:69 cmapload([‘D:\m…

机器学习笔记 - Swish激活函数的定义和优势

一、Swish激活函数简述 首先,Swish 是像 ReLU、sigmoid 和 tanh 一样的非线性函数,使神经网络能够对输入和输出之间的复杂关系进行建模。非线性函数对于深度学习的工作至关重要,因为它们能够捕获和表示复杂的模式。 与 ReLU 等其他常用激活函数相比,Swish 具有独特的形状。…

Arduino驱动VL53L3CX ToF激光测距传感器(距离传感器)

目录 1、传感器特性 2、硬件原理图 3、控制器和传感器连线图 4、驱动程序 <

IO内存访问函数

一. 简介 本文简单了解几个 I/O 内存访问函数。 这里说的 I/O 是输入/输出的意思&#xff0c;并不是我们学习单片机的时候讲的 GPIO 引脚。 二. IO 内存访问函数 这里涉及到两个概念&#xff1a;I/O 端口和 I/O 内存。 当外部寄存器或内存映射到 IO 空间时&#xff0c;称…

C# 判断两个时间段是否重叠

public static bool IsOverlap(DateTime startTime1, DateTime endTime1, DateTime startTime2, DateTime endTime2){// 判断两个时间段是否有重叠return !(endTime1 < startTime2 || startTime1 > endTime2);//根据德摩根定律&#xff0c;等效为&#xff1a;endTime1 &g…

leetcode 268. 丢失的数字(优质解法)

链接&#xff1a;268. 丢失的数字 代码: class Solution {public int missingNumber(int[] nums) {int result0;for(int i0;i<nums.length;i){result^i;}for(int i0;i<nums.length;i){result^nums[i];}return result;} } 题解&#xff1a; 本题是比较简单的题&#xff…

天文观测与计算机技术:粉丝的视角

天文观测与计算机技术&#xff1a;粉丝的视角 在浩瀚无垠的宇宙中&#xff0c;每一颗星星都像是神秘的密码&#xff0c;等待我们去破译。作为天文观测的粉丝&#xff0c;我深知每一个美丽的星图背后都离不开计算机技术的支持。在这篇文章中&#xff0c;我将分享我对天文观测与…

ei论文会被scopus检索吗

scopus数据库能检索的专业范围是比较广泛的&#xff0c;涵盖了医学&#xff0c;地球环境科学&#xff0c;化学&#xff0c;数学&#xff0c;工程学&#xff0c;物理&#xff0c;生物科学等领域&#xff0c;也收录了很多会议论文&#xff0c;那么ei论文被其检索吗?其实严格说来…

最小二乘法简介

最小二乘法简介 1、背景描述2、最小二乘法2.1、最小二乘准则2.2、最小二乘法 3、最小二乘法与线性回归3.1、最小二乘法与线性回归3.2、最小二乘法与最大似然估计 4、正态分布&#xff08;高斯分布&#xff09; 1、背景描述 在工程应用中&#xff0c;我们通常会用一组观测数据去…

基于javaWeb的高校后勤报修系统的设计与实现论文

基于JavaWeb的高校后勤报修系统的设计与实现 摘 要 当下&#xff0c;正处于信息化的时代&#xff0c;许多行业顺应时代的变化&#xff0c;结合使用计算机技术向数字化、信息化建设迈进。以前学校对于后勤报修信息的管理和控制&#xff0c;采用人工登记的方式保存相关数据&…