当前位置: 首页 > news >正文

leetcode55.跳跃游戏 【贪心】

题目:

给你一个非负整数数组 nums ,你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。

判断你是否能够到达最后一个下标,如果可以,返回 true ;否则,返回 false 。

示例:

示例 1:

输入:nums = [2,3,1,1,4]
输出:true
解释:可以先跳 1 步,从下标 0 到达下标 1, 然后再从下标 1 跳 3 步到达最后一个下标。

示例 2:

输入:nums = [3,2,1,0,4]
输出:false
解释:无论怎样,总会到达下标为 3 的位置。但该下标的最大跳跃长度是 0 , 所以永远不可能到达最后一个下标。

思路:

不能遍历依次遍历每个数字每种跳跃能否到达终点,这样的话会非常复杂。

答案思路:

遍历每个数字,看该数字的“覆盖范围” 能否覆盖到最后一个元素。如果可以覆盖到最后一个元素,则该数组可以跳跃到最后一个元素。

代码:

class Solution {
public:bool canJump(vector<int>& nums) {int n = nums.size();// 思路:遍历每个数字,这个数字覆盖的范围可以到最后一个数字,则返回true// 同时当前这个数字可以被之前的覆盖(当前数字可到达)if (n == 1)return true;int range = nums[0];int i;for (i = 1; i < n; i++) {if (range >= i) {    // 当前数字可到达int t = i + nums[i];    // 当前数字的覆盖范围range = max(t, range);    // 与之前数字的覆盖范围比较,取最大值,即最远覆盖范围// range = i + nums[i];}// 如果当前覆盖范围可以覆盖到最后一个数字,则最后一个数字可到达,返回true即可。if (range >= n - 1) {return true;}}// 遍历完之后发现,没有可以覆盖到最后一个数字的下标。则返回falsereturn false;}
};

运行结果:

相关文章:

leetcode55.跳跃游戏 【贪心】

题目&#xff1a; 给你一个非负整数数组 nums &#xff0c;你最初位于数组的 第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。 判断你是否能够到达最后一个下标&#xff0c;如果可以&#xff0c;返回 true &#xff1b;否则&#xff0c;返回 false 。 示例…...

探秘C语言扫雷游戏实现技巧

本篇博客会讲解&#xff0c;如何使用C语言实现扫雷小游戏。 0.思路及准备工作 使用2个二维数组mine和show&#xff0c;分别来存储雷的位置信息和排查出来的雷的信息&#xff0c;前者隐藏&#xff0c;后者展示给玩家。假设盘面大小是99&#xff0c;这2个二维数组都要开大一圈…...

Leetcode112. 路径总和

力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 给你二叉树的根节点 root 和一个表示目标和的整数 targetSum 。判断该树中是否存在 根节点到叶子节点 的路径&#xff0c;这条路径上所有节点值相加等于目标和 targetSum 。如果存在&#xff0c;返回 t…...

生成12位短id,自增且不连续,永不重复,不依赖数据库

基本思路&#xff1a; 设计模式&#xff1a;单例模式 是否加锁&#xff1a;是 synchronized 获取最后一次生成的时间戳值T0 限定初始时间为2023-08-01 00:00:00,获取当前时间时间戳T1,T1与初始时间的毫秒差值T2,转为16进制&#xff0c;转为字符串为r1,获取该字符串的长度L1…...

Zip压缩文件夹php打包函数代码

Zip压缩文件夹php打包函数代码,Zip相关函数是PHP的扩展功能,此函数可以直接复制使用。 以下是代码: <?php # 将文件夹的文件压缩到文件里 class Zip {/*** 将目标文件夹下的内容压缩到zip中(zip包含文件夹目录)* @param $sourcePath *文件夹路径 例: /home/test* @p…...

RISC-V交叉工具链riscv-gnu-toolchain编译

文章目录 1、下载2、编译1. 依赖安装2. 编译 3、运行 1、下载 $ sudo apt-get install git wget build-essential $ git clone https://github.com/riscv-collab/riscv-gnu-toolchain $ git checkout 2023.06.02注意上面 clone 的仓库&#xff0c;我们称其为构建脚本仓库&…...

我能“C“——指针进阶(上)

目录 指针的概念 1. 字符指针 2. 指针数组 3. 数组指针 3.1 数组指针的定义 3.2 &数组名VS数组名 3.3 数组指针的使用 4. 数组参数、指针参数 4.1 一维数组传参 4.2 二维数组传参 4.3 一级指针传参 4.4 二级指针传参 5. 函数指针 阅读两段有趣的代码&…...

SQLServer2008数据库还原失败 恢复失败

源地址&#xff1a;http://www.taodudu.cc/news/show-1609349.html?actiononClick 还原数据库问题解决方案 在还原数据库“Dsideal_school_db”时&#xff0c;有时会遇见上图中的问题“因为数据库正在使用&#xff0c;所以无法获得对数据库的独占访问权”&#xff0c;此时我们…...

【微服务部署】04-ForwardedHeaders

文章目录 1. ForwardedHeaders1.1 场景1.2 关键的HTTP头1.3 核心处理要点 1. ForwardedHeaders 1.1 场景 获取用户IP获取用户请求的原始URL 1.2 关键的HTTP头 X-Forwarded-ForX-Forwarded-ProtoX-Forwarded-Host 1.3 核心处理要点 设置PathBase设置ForwardedHeaders中间件…...

JVM 垃圾收集器

重点&#xff1a;CMS&#xff0c;G1&#xff0c;ZGC 主要垃圾收集器如下&#xff0c;图中标出了它们的工作区域、垃圾收集算法&#xff0c;以及配合关系。 Serial 收集器 Serial 收集器是最基础、历史最悠久的收集器。 如同它的名字&#xff08;串行&#xff09;&#xff0c…...

CSS 样式使用link和@import有什么区别

在页面导入样式时&#xff0c;使用link和import有以下区别&#xff1a; 位置&#xff1a;link标签可以放置在HTML文档的head或body中的任何位置&#xff0c;而import规则必须出现在CSS样式表的顶部。 加载方式&#xff1a;当浏览器解析到link标签时&#xff0c;会立即请求并加…...

LeetCode-2511-最多可以摧毁的敌人城堡数目

题目链接 代码实现&#xff1a; class Solution {/** 找 1 -> -1 的时候&#xff0c;经过0的最大个数* 解题思路&#xff1a;双指针*/public int captureForts(int[] forts) {int len forts.length;if(len1){return 0;}int max Integer.MIN_VALUE;boolean flag false;boo…...

iOS开发Swift-2-图片视图、App图标-赏月App

1.创建新项目 点击File - New - Project。 选择Single View App&#xff0c;点击Next。 填写文件信息&#xff0c;点击Next。 选择文件位置&#xff0c;点击Create。 修改App显示名称为 “赏月”。 2.设置背景色 选择Main&#xff0c;点击View界面&#xff0c;选择右边属性&…...

node18 vue2启动报错 error:0308010C:digital envelope routines::unsupported

出现原因 貌似是因为是因为 node 17版本开始发布的OpenSSL3.0, 而OpenSSL3.0对允许算法和密钥大小增加了严格的限制&#xff0c;可能会对生态系统造成一些影响。 解决方法 第一种方法降低node版本 降低到17以下即可 &#xff0c;如项目不能降低版本 看后面的解决方式 第二…...

Java8实战-总结18

Java8实战-总结18 使用流筛选和切片用谓词筛选筛选各异的元素截短流跳过元素 使用流 流让你从外部迭代转向内部迭代。这样&#xff0c;就用不着写下面这样的代码来显式地管理数据集合的迭代(外部迭代)了&#xff1a; List<Dish> vegetarianDishes new ArrayList<>…...

ARM编程模型-指令流水线

流水线技术通过多个功能部件并行工作来缩短程序执行时间&#xff0c;提高处理器核的效率和吞吐率&#xff0c;从而成为微处理器设计中最为重要的技术之一。 1. 3级流水线 到ARM7为止的ARM处理器使用简单的3级流水线&#xff0c;它包括下列流水线级。 &#xff08;1&#xff0…...

邮件营销:高效的节日宣传方式

每个国家都有当地的传统节日&#xff0c;像是我国刚过去的端午节&#xff0c;即将迎来的中秋节、国庆节。我们除了会进行一些传统习俗外&#xff0c;各路商家还会趁这个机会开启促销活动。 对于公司来讲&#xff0c;抓住每一次营销活动都可能会带来更高的营销额&#xff0c;或…...

Leetcode109. 有序链表转换二叉搜索树

力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 给定一个单链表的头节点 head &#xff0c;其中的元素 按升序排序 &#xff0c;将其转换为高度平衡的二叉搜索树。 本题中&#xff0c;一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度…...

基于Googlenet深度学习网络的人脸身份识别matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ..................................................................... % 定义修改的范围 …...

vue2 生命周期,工程化开发入门

一、今日目标 1.生命周期 生命周期介绍生命周期的四个阶段生命周期钩子声明周期案例 2.工程化开发入门 工程化开发和脚手架项目运行流程组件化组件注册 二、Vue生命周期 思考&#xff1a;什么时候可以发送初始化渲染请求&#xff1f;&#xff08;越早越好&#xff09;什么…...

初次使用Taotoken模型广场进行选型与测试的直观感受

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 初次使用Taotoken模型广场进行选型与测试的直观感受 作为一名需要接入大模型能力的开发者&#xff0c;面对市场上众多的模型提供商…...

为什么 HDFS 文件一旦写入就不能修改,只能追加或删除(HDFS 设计哲学:一次写入,多次读取)

HDFS采用"一次写入&#xff0c;多次读取"的设计哲学&#xff0c;不支持文件内容修改。这种设计通过简化数据一致性机制、提高吞吐量和优化批处理场景性能&#xff0c;实现了高效的大数据处理。虽然不能直接修改文件&#xff0c;但支持追加、删除和覆盖操作。Hive等工…...

淘宝淘金币自动化脚本终极指南:每天节省25分钟的高效神器

淘宝淘金币自动化脚本终极指南&#xff1a;每天节省25分钟的高效神器 【免费下载链接】taojinbi 淘宝淘金币自动执行脚本&#xff0c;包含蚂蚁森林收取能量&#xff0c;芭芭农场全任务&#xff0c;解放你的双手 项目地址: https://gitcode.com/gh_mirrors/ta/taojinbi 在…...

Cacti插件开发实战:从零开始创建自定义插件

Cacti插件开发实战&#xff1a;从零开始创建自定义插件 【免费下载链接】cacti Cacti ™ 项目地址: https://gitcode.com/gh_mirrors/ca/cacti Cacti是一款强大的网络监控和数据采集工具&#xff0c;通过插件系统可以轻松扩展其功能。本文将带你从零开始&#xff0c;掌握…...

ChromeKeePass深度解析:如何实现KeePass密码自动填充的强力浏览器扩展?

ChromeKeePass深度解析&#xff1a;如何实现KeePass密码自动填充的强力浏览器扩展&#xff1f; 【免费下载链接】ChromeKeePass Chrome extensions for automatically filling credentials from KeePass 项目地址: https://gitcode.com/gh_mirrors/ch/ChromeKeePass 你是…...

Windows 11 Fixer终极指南:一键优化你的Windows 11系统体验

Windows 11 Fixer终极指南&#xff1a;一键优化你的Windows 11系统体验 【免费下载链接】Windows-11-Fixer A tool to "Fix" Windows 11 项目地址: https://gitcode.com/gh_mirrors/wi/Windows-11-Fixer Windows 11 Fixer是一款专为Windows 11用户设计的系统优…...

ElevenLabs波兰语语音突然失真?3类高频报错代码+实时调试日志解析(含波兰语IPA音素校验表)

更多请点击&#xff1a; https://codechina.net 第一章&#xff1a;ElevenLabs波兰语语音失真现象的系统性定位 ElevenLabs 的 TTS 服务在处理波兰语时&#xff0c;部分用户报告出现音素断裂、重音偏移及辅音簇&#xff08;如 szcz、 żdź&#xff09;发音模糊等失真现象。此…...

数环通iPaaS流程引擎中断恢复机制设计:快照 + 消息驱动实现无缝续跑

一个无法回避的问题 做iPaaS自动化引擎开发的同学迟早会遇到这个问题&#xff1a;流程跑到一半断了&#xff0c;怎么办&#xff1f; 不是那种代码bug导致的异常退出——那种靠异常处理就行。我说的是更真实、更棘手的场景&#xff1a; 服务发版需要滚动重启&#xff0c;机器上还…...

告别造影剂过敏风险:用Python和PyTorch复现CTA-GAN,从平扫CT生成血管增强图像

告别造影剂过敏风险&#xff1a;用Python和PyTorch复现CTA-GAN&#xff0c;从平扫CT生成血管增强图像 医学影像技术正经历一场由深度学习驱动的革命。对于需要血管造影检查的患者而言&#xff0c;传统CT血管造影&#xff08;CTA&#xff09;必须注射含碘造影剂&#xff0c;这不…...

标书高效制作:Word 排版快捷键 + AI 工具组合工作流

在招投标文档制作中&#xff0c;Word 排版、格式调整、段落对齐、目录生成等重复操作&#xff0c;往往占用大量时间。熟练使用快捷键可以显著提升编辑速度&#xff0c;而结合 AI 辅助工具&#xff0c;则能从流程层面实现效率升级。本文分享一套安全、合规、无营销的纯办公实践方…...