leetcode0027 移除元素 - easy

1 题目:移除元素 27

官方标定难度:简单

给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素。元素的顺序可能发生改变。然后返回 nums 中与 val 不同的元素的数量。

假设 nums 中不等于 val 的元素数量为 k,要通过此题,您需要执行以下操作:

更改 nums 数组,使 nums 的前 k 个元素包含不等于 val 的元素。nums 的其余元素和 nums 的大小并不重要。
返回 k。
用户评测:

评测机将使用以下代码测试您的解决方案:

int[] nums = [...]; // 输入数组
int val = ...; // 要移除的值
int[] expectedNums = [...]; // 长度正确的预期答案。// 它以不等于 val 的值排序。int k = removeElement(nums, val); // 调用你的实现assert k == expectedNums.length;
sort(nums, 0, k); // 排序 nums 的前 k 个元素
for (int i = 0; i < actualLength; i++) {assert nums[i] == expectedNums[i];
}

如果所有的断言都通过,你的解决方案将会 通过。

示例 1:

输入:nums = [3,2,2,3], val = 3
输出:2, nums = [2,2,,]
解释:你的函数函数应该返回 k = 2, 并且 nums 中的前两个元素均为 2。
你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。

示例 2:

输入:nums = [0,1,2,2,3,0,4,2], val = 2
输出:5, nums = [0,1,4,0,3,,,_]
解释:你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。
注意这五个元素可以任意顺序返回。
你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。

提示:

0 <= nums.length <= 100
0 <= nums[i] <= 50
0 <= val <= 100

2 solution

本题和上一题差不多,采用类似的做法即可

代码

int removeElement(vector<int> &nums, int val) {int k = 0;for(int i = 0; i < nums.size(); i++){if(nums[i] != val) nums[k++] = nums[i];}return k;
}

结果

在这里插入图片描述

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

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

相关文章

Mysql自增主键会遇到什么问题?

大家好&#xff0c;我是锋哥。今天分享关于【Mysql自增主键会遇到什么问题?】面试题。希望对大家有帮助&#xff1b; Mysql自增主键会遇到什么问题? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 MySQL自增主键&#xff08;AUTO_INCREMENT&#xff09;在使用过程…

linux 命令 case

在 Linux Shell 脚本中&#xff0c;case 是一个强大的多条件分支控制命令&#xff0c;用于基于模式匹配执行不同代码块。它类似于其他编程语言中的 switch-case 语句&#xff0c;但更灵活&#xff0c;支持通配符和模式组合。以下是其核心用法和实 一、基础语法 case 变量 in …

注意力机制,层归一化,RBA。KAN-ODE,小波KAN

目录 attention is all you need 翻译 多头注意力 8.6 Multi-head Self Attention 模型 模型架构 encoder安定 decode 注意力机制 位置编码 自注意力机制的优势 实验结果 结论 代码 Transformer 架构 代码实现思路 总结 编码器、解码器和位置编码的摆放顺序&…

思维训练让你更高、更强 |【逻辑思维能力】「刷题训练笔记」假设法模式逻辑训练题(1-5)

每日一刷 思维训练让你更高、更强&#xff01; 题目1 谁在说谎&#xff0c;谁拿走了零钱&#xff1f; 姐姐上街买菜回来后&#xff0c;就随手把手里的一些零钱放在了抽屉里&#xff0c;可是&#xff0c;等姐姐下午再去拿钱买菜的时候发现抽屉里的零钱没有了&#xff0c;于是&…

联想拯救者 M600 无线游戏鼠标|自定义驱动程序安装说明

安装步骤 下载后得到联想拯救者 M600 无线游戏鼠标自定义驱动程序“Setup_2.0.6.01271.exe”&#xff0c;右键 “ Setup_2.0.6.01271.exe ”&#xff0c;以管理员身份运行。 在安装向导窗口&#xff0c;点击“下一步” 在安装向导“许可协议”窗口&#xff0c;勾选“我接受协议…

Deep Image Deblurring: A Survey 去模糊文献阅读

深度图像去模糊&#xff1a;综述 摘要 图像去模糊是低层计算机视觉中的经典问题&#xff0c;其目标是从模糊的输入图像中恢复出清晰图像。模糊可能由多种因素引起&#xff0c;例如失焦、相机抖动或目标快速运动。近年来&#xff0c;深度学习技术的进步显著推动了这一问题的解…

Python多版本环境管理UV

Python多版本环境管理UV 1-参考网址 Python虚拟环境UV管理工具-官网Python虚拟环境UV管理工具-快速开始pyproject.toml使用指导 2-核心知识点 1&#xff09;python项目维护requirements.txt2&#xff09;python机器学习环境Anaconda3&#xff09;python轻量级环境管理uv4&…

如何快速检测光模块内部光纤裂纹?

关键词&#xff1a;光纤裂纹、白光干涉、光纤微裂纹检测仪 概述&#xff1a; 随着大数据时代对数据量需求的爆炸式增长&#xff0c;光通信系统也在不断的更新升级。光通信产业链上的光收发模块作为核心组件之一&#xff0c;其性能优劣直接影响系统的通信质量。由于光模块速率…

PyQt基础——简单的窗口化界面搭建以及槽函数跳转

一、代码实现 import sysfrom PyQt6.QtGui import QPixmap from PyQt6.QtWidgets import QApplication, QWidget, QPushButton, QLabel, QLineEdit, QMessageBox from PyQt6.uic import loadUi from PyQt6.QtCore import Qtclass LoginWindow(QWidget):def __init__(self):sup…

深入理解 ALSA 声卡驱动:从理论到实践,解决嵌入式 Linux 声卡无声问题

&#x1f4cc; 1. 引言 在嵌入式 Linux 设备上&#xff0c;ALSA&#xff08;Advanced Linux Sound Architecture&#xff09;是音频驱动的核心框架。 然而&#xff0c;在实际部署过程中&#xff0c;我们可能会遇到 声卡无声、通道不匹配、I2S 传输异常等问题。 本文将深入解析…

Windows远程桌面黑屏怎么办?

在使用Windows远程桌面连接另一台电脑时&#xff0c;用户经常会遇到Windows远程桌面黑屏的问题。那么&#xff0c;该如何有效地解决Windows远程桌面黑屏的问题呢&#xff1f;遇到远程桌面连接黑屏的问题时&#xff0c;可以通过在本地组策略编辑器中禁用WDDM图形显示驱动来解决。…

【VSCODE 插件 可视化】:SVG 编辑插件 SVG Editor

插件下载 svgeditor 创建文件 Windows/Linux 快捷键 Ctrl Shift P 打开VSCODE 命令面板查找 New File With Svg Editor 编辑文件 保存文件 打开文件以继续编辑 CG 选中多个&#xff1a;shift单击没找到横向分布功能无法用键盘微调位置

python3GUI--模仿安卓桌面 By:PyQt5(附下载地址)

文章目录 一&#xff0e;前言二&#xff0e;展示1.主界面2.设置页面3.更换了壁纸且切换桌面页面 三&#xff0e;项目分享1.项目代码结构2.组件代码分享 四&#xff0e;总结 文件大小25.5M&#xff0c;欢迎下载体验&#xff01;点击下载 一&#xff0e;前言 今天给大家推荐我用…

stm32 L432KC(mbed)入门第一课

目录 一. 前言 二. 专栏意义 三. MS入门第一课 一. 前言 新的一年MS课程又开始了&#xff0c;同时也到了该专栏的第三个年头。在前两年中&#xff0c;该专栏帮助了很多第一次接触单片机的同学。其中&#xff0c;有的同学订阅专栏是为了更好的完成并且通过MS这门课程&#xf…

【Unity网络同步框架 - Nakama研究(二)】

Unity网络同步框架 - Nakama研究(二) 虽说官方文档和网站以及论坛建立的不错&#xff0c;而且还有中文翻译且质量也不错&#xff0c;但是总会遇到一些词不达意&#xff0c;说了但是依旧没懂的部分&#xff0c;甚至问AI也问不出什么东西&#xff0c;所以需要有一些比较明显的博客…

【Linux系统编程】信号

目录 1、信号1.1、什么是信号1.2、进程对信号的处理1.3、信号的生命周期1.4、信号处理流程1.5、信号的发送 2、kill()、raise()函数 发送信号3、alarm函数 闹钟信号4、pause函数 挂起信号、暂停5、singal 函数 捕获信号5.1、为什么返回值是上一次的处理方式5.2、练习 6、sigact…

git使用命令总结

文章目录 Git 复制创建提交步骤Git 全局设置:创建 git 仓库:已有仓库? 遇到问题解决办法&#xff1a;问题一先git pull一下&#xff0c;具体流程为以下几步&#xff1a; 详细步骤 Git 复制 git clone -b RobotModelSetting/develop https://gitlab.123/PROJECT/123.git创建提…

解锁 AI 核心:神经网络与机器学习知名算法全解析

引言​ 在人工智能蓬勃发展的当下&#xff0c;神经网络与机器学习算法作为核心驱动力&#xff0c;广泛应用于各个领域。了解这些知名算法&#xff0c;能让我们更好地把握 AI 技术的精髓。接下来&#xff0c;一同深入探寻。​ 机器学习知名算法​ 线性回归&#xff08;Linear…

基于SpringBoot + Vue 的房屋租赁系统

基于springboot的房屋租赁管理系统-带万字文档 SpringBootVue房屋租赁管理系统 送文档 本项目有前台和后台两部分、多角色模块、不同角色权限不一样 共分三种角色&#xff1a;用户、管理员、房东 管理员&#xff1a;个人中心、房屋类型管理、房屋信息管理、预约看房管理、合…

30天学习Java第六天——Object类

Object类 java.lang.Object时所有类的超类。Java中所有类都实现了这个类中的方法。 toString方法 将Java对象转换成字符串的表示形式。 public String toString() {return getClass().getName() "" Integer.toHexString(hashCode()); }默认实现是&#xff1a;完…