首页 > 编程语言 >#yyds干货盘点# LeetCode程序员面试金典:跳跃游戏 II

#yyds干货盘点# LeetCode程序员面试金典:跳跃游戏 II

时间:2023-05-08 23:31:25浏览次数:39  
标签:yyds nums int 金典 示例 II steps 跳转 position

题目:

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

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

0 <= j <= nums[i] 

i + j < n

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

 

示例 1:

2
1
3

示例 2:

输入: nums = [2,3,0,1,4]
输出: 2

代码实现:

class Solution {
    public int jump(int[] nums) {
        int position = nums.length - 1;
        int steps = 0;
        while (position > 0) {
            for (int i = 0; i < position; i++) {
                if (i + nums[i] >= position) {
                    position = i;
                    steps++;
                    break;
                }
            }
        }
        return steps;
    }
}

标签:yyds,nums,int,金典,示例,II,steps,跳转,position
From: https://blog.51cto.com/u_13321676/6256389

相关文章

  • 程序员面试金典---24
    部分排序思路:双指针,但是该双指针并不是相互关联的双指针。/***@param{number[]}array*@return{number[]}*/varsubSort=function(array){if(!array.length){return[-1,-1]}letleft=-1letright=-1letmin=Number.MA......
  • 全景剖析阿里云容器网络数据链路(三)—— Terway ENIIP
    来源https://help.aliyun.com/practice_detail/602821本系列联合作者容器服务@谢石前言近几年,企业基础设施云原生化的趋势越来越强烈,从最开始的IaaS化到现在的微服务化,客户的颗粒度精细化和可观测性的需求更加强烈。容器网络为了满足客户更高性能和更高的密度,也一直在高速的......
  • ASCII,Latin1,Unicode,UTF-8与GBK编码的区别
    3.Unicode编码世界上存在着多种编码方式,同一个二进制数字可以被解释成不同的符号。因此,要想打开一个文本文件,就必须知道它的编码方式,否则用错误的编码方式解读,就会出现乱码。为什么电子邮件常常出现乱码?就是因为发信人和收信人使用的编码方式不一样。可以想象,如果有一种编码,将世......
  • USB 控制器 piix3-uhci, piix4-uhci, ehci, ich9-ehci1, vt82c686b-uhci, pci-ohci, n
    在折腾TrueNASSCALE虚拟机的USBPassthrough的时候发现有很多不同种类的USBController,研究了一下发现他们有这些异同点piix3-uhci和piix4-uhci是虚拟的USB1.1控制器,可被用于QEMU和VirtualBox虚拟机中,它们有不同的版本号,但功能上差别不大。ehci是USB2.0......
  • 四种语言刷算法之环形链表 II
    力扣142. 环形链表II1、C/***Definitionforsingly-linkedlist.*structListNode{*intval;*structListNode*next;*};*/structListNode*detectCycle(structListNode*head){if(head==NULL||head->next==NULL)returnNULL;stru......
  • #yyds干货盘点#Linux使用者与群组
    Linux使用者身份与群组记录的文件在Linux系统当中,默认的情况下,所有的系统上的帐号与一般身份使用者,还有那个root的相关信息,都是记录在/etc/passwd这个文件内的。至于个人的XX则是记录在/etc/shadow这个文件下。此外,Linux所有的群组名称都纪录在/etc/group内!这三个文件可以说是......
  • iic(i2c)协议简介
    近来了解了下iic总线协议,记录下知识点+++++Q:什么是iic协议?A:iic协议是NXP研发的半双工串行总线协议,只有两条总线就可连接多个设备,两条总线分别是sda(串行数据)和scl(串行时钟),具有上拉电阻,使得总线空闲状态下sda和scl上都是高电平。+++++Q:iic协议有什么特点?适合什么场景?A:ii......
  • 程序员面试金典---23
    整数英语的表示思路:三位一写。/***@param{number}num*@return{string}*/varnumberToWords=function(num){constsingles=["","One","Two","Three","Four","Five","Six","Sev......
  • 24 IIC(二)SMBus协议
    SMBus协议:http://www.smbus.org/specs/1.SMBus简介SMBus:SystemManageBus,系统管理总线SMBus是基于IIC协议发展而来,SMBus要求比IIC更加严格,是其子集2.SMBus与IIC的区别VDD的极限值不一样IIC:范围广SMBus:1.8v-5v时钟频率和clockstretingIIC:无限制SMBus:时钟频率最......
  • 贴个IIC的代码和MPU6050寄存器地址的文档(MOVE版)
    IIC代码:里面的UV_Delay()那几个要自己定义一下。还有那几个子函数也要自己定义在一个头文件里面。比如:#ifndef_IIC_H#define_IIC_H#defineUV_Delay()delay5us()#defineUV_SDA_SET()P2^0=1#defineUV_SDA_......