​LeetCode解法汇总2460. 对数组执行操作

news/2024/5/27 18:20:06/

目录链接:

力扣编程题-解法汇总_分享+记录-CSDN博客

GitHub同步刷题项目:

https://github.com/September26/java-algorithms

原题链接:力扣


描述:

给你一个下标从 0 开始的数组 nums ,数组大小为 n ,且由 非负 整数组成。

你需要对数组执行 n - 1 步操作,其中第 i 步操作(从 0 开始计数)要求对 nums 中第 i 个元素执行下述指令:

  • 如果 nums[i] == nums[i + 1] ,则 nums[i] 的值变成原来的 2 倍,nums[i + 1] 的值变成 0 。否则,跳过这步操作。

在执行完 全部 操作后,将所有 0 移动 到数组的 末尾 。

  • 例如,数组 [1,0,2,0,0,1] 将所有 0 移动到末尾后变为 [1,2,1,0,0,0] 。

返回结果数组。

注意 操作应当 依次有序 执行,而不是一次性全部执行。

示例 1:

输入:nums = [1,2,2,1,1,0]
输出:[1,4,2,0,0,0]
解释:执行以下操作:
- i = 0: nums[0] 和 nums[1] 不相等,跳过这步操作。
- i = 1: nums[1] 和 nums[2] 相等,nums[1] 的值变成原来的 2 倍,nums[2] 的值变成 0 。数组变成 [1,4,0,1,1,0] 。
- i = 2: nums[2] 和 nums[3] 不相等,所以跳过这步操作。
- i = 3: nums[3] 和 nums[4] 相等,nums[3] 的值变成原来的 2 倍,nums[4] 的值变成 0 。数组变成 [1,4,0,2,0,0] 。
- i = 4: nums[4] 和 nums[5] 相等,nums[4] 的值变成原来的 2 倍,nums[5] 的值变成 0 。数组变成 [1,4,0,2,0,0] 。
执行完所有操作后,将 0 全部移动到数组末尾,得到结果数组 [1,4,2,0,0,0] 。

示例 2:

输入:nums = [0,1]
输出:[1,0]
解释:无法执行任何操作,只需要将 0 移动到末尾。

提示:

  • 2 <= nums.length <= 2000
  • 0 <= nums[i] <= 1000

解题思路:

/**

* 首先对于nums[i] == nums[i + 1]的值,进行对应的处理。

* 然后将所有 0 移动 到数组的 末尾,我们设置一个index,记录当前不为0的个数,每次遍历到一个不为0的数字时和num[index]交换位置即可。

*/

代码:

vector<int> Solution2460::applyOperations(vector<int> &nums)
{for (int i = 0; i < nums.size() - 1; i++){if (nums[i] != nums[i + 1]){continue;}nums[i] = nums[i] * 2;nums[i + 1] = 0;}int index = 0;for (int i = 0; i < nums.size(); i++){if (nums[i] == 0){continue;}int local = nums[index];nums[index] = nums[i];nums[i] = local;index++;}return nums;
};


http://www.ppmy.cn/news/220382.html

相关文章

如何从消失的异常堆栈定位线上问题

一、消失的异常堆栈 如何快速定位问题&#xff1f;想必大家心中都有自己的答案&#xff0c;当然最简单直接的办法还是查找异常堆栈信息。 然而有时异常堆栈并不完整&#xff0c;只有一句描述&#xff0c;如下&#xff1a; Caused by: java.lang.NullPointerException 造成这…

第17节:cesium 图元聚合基础教程(含源码+视频)

相关代码: <template><div class="viewer"><vc-viewer @ready="ready" :logo="false"><vc-layer-imagery><vc-pr

解决苹果手机给windows笔记本电脑开热点电脑连接不上热点的问题

过年这几天在家用笔记本电脑办公&#xff0c;由于条件限制只能使用手机给电脑上网的方式。以前用苹果手机给windows笔记本开热点一直都能连接上&#xff0c;但是今年没有连接上&#xff0c;虽然电脑可以连接上&#xff0c;但是立马就断开了&#xff0c;时断时续&#xff0c;很是…

苹果笔记本电脑安装Windows系统的教程!

目录 步骤一&#xff1a;下载64位Windows10文件包&#xff08;三选一 , 任君选择&#xff09;推荐下载链接1: [https://windows.xnayw.cn/win1064.html ](https://windows.xnayw.cn/win1064.html)推荐下载链接2: [https://www.xitongzhijia.net](https://www.xitongzhijia.net)…

苹果M1芯片笔记本电脑SIP系统完整性保护无法关闭成功

环境&#xff1a; MacBook Pro 13.3 八核M18G/256G 2020款 Mac os 11.7.1 问题描述&#xff1a; 系统完整性保护 SIP(System Integrity Protection&#xff0c;有时被称作rootless [2-3] &#xff0c;中文名为系统完整性保护) 是苹果公司的macOS系统中一个安全功能&#x…

苹果Mac笔记本电脑如何开启热点分享网络?

苹果除了在iPhone 上有设计热点分享的功能之外&#xff0c;其实Mac 笔记本电脑很早就已经可以开启类似热点分享网络的功能了&#xff0c;在没有Wi-Fi 只提供有线网路的地方相当好用&#xff0c;来看看要在苹果Mac上如何开启热点分享网路的功能吧&#xff01; 苹果Mac 开启热点…

青少年C++编程等考有这么多??机构到底该带孩子考哪个?

随着信息学的普及与发展&#xff0c;越来越多的孩子开始学习C&#xff0c;参加编程等考来检验C的学习成果、作为也逐渐成为了一个共识&#xff0c;跟C有关的等考究竟有哪些&#xff0c;哪个等考含金量够高&#xff0c;能够客观、有效地检验学习成果呢&#xff1f; 在这里整理了…

Zookeeper是什么,它有什么特性与使用场景?

ZooKeeper 是一种开源的分布式协调服务&#xff0c;由雅虎公司开发。它可以帮助分布式应用程序实现数据同步、配置管理、命名服务等功能&#xff0c;并具有高可用性、可靠性和可扩展性等特性。本文将对 ZooKeeper 的定义、特性和使用场景进行详细介绍。 什么是 ZooKeeper&…

CloudQuery一体化数据库SQL操作安全管控平台

&#x1f497;wei_shuo的个人主页 &#x1f4ab;wei_shuo的学习社区 &#x1f310;Hello World &#xff01; CloudQuery一体化数据库SQL操作安全管控平台 导读 CloudQuery作为业界领先的面向企业的数据库安全解决方案&#xff0c;CloudQuery致力于打造一站式安全可靠的数据操…

MyBatis Plus基本用法-SpringBoot框架

依赖 使用 Mybatis Plus 框架时&#xff0c;需要添加以下依赖&#xff1a; <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>latest-version</version> </dependency…

红外线与毫米波区别

太赫兹波介于微波和可见光之间&#xff0c;在长波段与毫米波重合&#xff0c;而在短波段与红外线重合。 红外线波长比可见光波长&#xff0c;比毫米波短。 可见光波长为400-700nm之间。 太赫兹是指频率在0.1~10THz范围内的电磁波&#xff0c;1THz10^12Hz。

阿达的红外射频遥控盒子(三)

红外射频遥控配套固件开源 阳阳学编程抖音号中玩的红外射频遥控器&#xff0c;配套固件的源代码&#xff0c;接入的是飞阳物联平台&#xff0c;mqtt协议&#xff0c;支持小爱&#xff0c;小度&#xff0c;天猫精灵 支持红外和射频315和433 配置pcb和教程 &#xff08;一&#…

短波红外 、 近红外、中波红外、长波红外区别

近红外线&#xff08;NIR, IR-A DIN&#xff09;&#xff1a;波长在0.75&#xff0d;1.4微米&#xff0c;以水的吸收来定义&#xff0c;由于在二氧化矽玻璃中的低衰减率&#xff0c;通常使用在光纤通信中。在这个区域的波长对影像的增强非常敏锐。例如&#xff0c;包括夜视设备…

遥控器从红外线向RF发展

索尼公司业务执行董事、SVP电视业务本部长福田隆志表示&#xff1a;“遥控器的通信方式从红外线改为RF以后&#xff0c;人们在使用遥控器时就不用再考虑电视的位置和遥控器的指向了。” 很长时间以来&#xff0c;电视遥控器基本上都是利用红外线的方式传送信号。现在&#xff0…

红外避障模块

试验实现红外避障模块被遮挡时点亮LED功能。 1.实物原理图 2.模块描述 电路板尺寸&#xff1a;3.2CM*1.4CM&#xff1b;3mm 的螺丝孔&#xff0c;便于固定、安装&#xff1b;接通电源后&#xff0c;红色指示灯亮起&#xff0c;该传感器模块对环境光线适应能力强&#xff0c;其…

红外发光二极管

5MM850NM发射管F5红外线发光二极管LED灯珠0.1W监控安防用45度 体积(MM) 发射角度 电压(V) 电流(MA) 峰值波段&#xff08;NM&#xff09; 5mm 45度 1.3-1.6V 20-30MA 850NM 波长&#xff1a;940nm&#xff0c;适用于遥控器&#xff0c;例如家用电器的遥控…

红外遥控器学习心得

**T红外遥控器学习心得OC #在学习之前对其中的一些代码与函数不是很清楚&#xff0c;所以做了一下记录 前言 提示&#xff1a;红外遥控器中的代码知识&#xff1a; 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 一、红外遥控的指令码到底如何获得&a…

反射式红外光电管 ITR8307

简 介&#xff1a; 测了了ITR8307的基本特性&#xff0c;包括它的静态、动态特性等。并通过测量独轮车惯量轮转速展示了它的应用。 关键词&#xff1a; ITR8307&#xff0c;反射式光电管 #mermaid-svg-BQor0KNfsxWU3ikw {font-family:"trebuchet ms",verdana,arial,s…

红外遥控器实验

红外遥控器 红外遥控是一种无线、非接触控制技术&#xff0c;具有抗干扰能力强&#xff0c;信息传输可靠&#xff0c;功耗低&#xff0c;成本低&#xff0c;易实现等显著优点&#xff0c;被诸多电子设备特别是家用电器广泛采用&#xff0c;并越来越多的应用到计算机系统中。 同…

小爱控制HA上的开关(红外线)

小爱同学控制homeassistant in 树莓派 by 红外线 前言 租了房子以后一直想搞智能家居自动化各种事情&#xff0c;最近终于腾出空可以搞辣&#xff01; 研究了一圈感觉拆开关太麻烦了&#xff0c;零火线还要撬开关&#xff0c;租的房子不敢瞎搞。想了一下可以用arduino/树莓派…