LeetCode每日一题——移除元素

移除元素OJ链接:27. 移除元素 - 力扣(LeetCode)

题目:

思路:

题目给定要求只能使用O(1)的额外空间并且原地修改输入数组,然后返回移除后的数组行长度。那
么我们就可以确我没有办法建立临时的数组存放我们的值,并且返回值是我们新的数组长度。
根据之前所学的知识,我们可以很快的联想到可以使用我们的双指针进行解题。

先观察我们的函数参数。nums是数组,numsSize是数组大小,val是我们要删掉的元素。 

 

 

代码实现:
int removeElement(int* nums, int numsSize, int val) 
{int dest=0;int src=0;while(numsSize--)//循环次数为numsSize{if(nums[dest]==val){dest++;}else{nums[src]=nums[dest];dest++;src++;}}return src;
}
运行结果: 

复杂度分析
时间复杂度:O(n),其中 n 为序列的长度。我们只需要遍历该序列至多两次。
空间复杂度:O(1)。我们只需要常数的空间保存若干变量。

 

 

PS:看到这里了,码字不易,给个一键三连鼓励一下吧!有不足或者错误之处欢迎在评论区指出!    
 

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

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

相关文章

AcWing 790:数的三次方根 ← 浮点数二分

【题目来源】https://www.acwing.com/problem/content/792/【题目描述】 给定一个浮点数 n,求它的三次方根。【输入格式】 共一行,包含一个浮点数 n。【输出格式】 共一行,包含一个浮点数,表示问题的解。 注意,结果保留…

【Stable Diffusion】入门-01:原理简介+应用安装(Windows)+生成步骤

【Stable Diffusion】入门:原理简介应用安装(Windows)生成步骤 原理简介应用安装 原理简介 稳定扩散生成模型(Stable Diffusion)是一种潜在的文本到图像扩散模型,能够在给定任何文本输入的情况下生成照片般逼真的图像。 应用安…

面试-简单算法题

简单算法: 1.反转字符串 编写一个函数,将输入的字符串反转。 function reverseString(str) {return str.split().reverse().join(); }str.split(‘’):使用 split(‘’) 方法将字符串 str 拆分成字符数组,每个字符都成为数组中…

电路方案分析(十八)四开关buck-boost双向同步DC/DC变换器方案

tip是:资料来自网络,仅供学习交流使用! 1.概述 4开关降压升压双向DC-DC电源转换器在很多应用中都有使用。作为一个同步降压或同步升压转换器,其中只有两个开关切换,开关损耗减少到一半。只有当直流母线和电池电压彼此…

人形机器人进展:IEEE Robotics出版双臂通用协同机械手操作架构

文章目录 1. Main2. My ThoughtsReference彩蛋a. OpenAI 投资: 人形机器人公司 Figure AIb. 人工智能软件工程师 Devin 上线 1. Main 图1 人居环境下的人形双臂机器人系统 通用人形机器人 作为近年来机器人与AI交叉领域的研究热点和技术竞争高地,因其具备在 非结构化…

深度强化学习(六)(改进价值学习)

深度强化学习(六)(改进价值学习) 一.经验回放 把智能体与环境交互的记录(即经验)储存到 一个数组里,事后反复利用这些经验训练智能体。这个数组被称为经验回放数组(replay buffer)。 具体来说, 把智能体的轨迹划分成 ( s t , a t , r t ,…

软件工程(Software Engineering)

一、软件工程概述 1.软件生存周期 软件: 包含程序、数据及相关文档 软件工程: 涉及到软件开发、维护、管理等多方面的原理、工具与环境。最终的目的是开发高质量的软件。 目的: 提高软件生产率、提高软件质量、降低软件成本。 文档的作用&…

一瓶5.86万,听花酒什么来头?

听花酒,到底什么来头? 宣称有提升免疫力、改善睡眠、保障男性功能、调节生理紊乱、抗衰老等功效的听花酒,被315晚会曝光了。 相关话题词随即冲上了热搜。之后,售价最高达58600元的听花酒被京东、拼多多、淘宝等电商平台火速下架…

01、CMD与Hello world

一、CMD与Hello World 文章目录 一、CMD与Hello World1.什么是cmd2.打开cmd3.常用命令4.环境变量5.JDK的安装6.JDK环境变量的配置7.javac 与 java命令8.HelloWorld9.JRE与JDKJDK(Java Development kit):Java 开发工具包JRE (Java Runtime Env…

HashMap的七种遍历方式

HashMap我整理了七种遍历方式&#xff1a; Iterator entrySet Iterator keySet ForEach entrySet ForEach keySet lambda stream entrySet stream 多线程 entrySet 下面看代码&#xff1a; public static void main(String[] args) {HashMap<String, String> map…

Stable Diffusion 阿里云搭建FC实现文生图模型

AI的创造力真的很奇妙。 提示词&#xff1a;杰作&#xff0c;最佳品质&#xff0c;非常详细&#xff0c;七龙珠&#xff0c;孙悟空&#xff0c;西游记&#xff0c;仙境&#xff0c;动态角度&#xff0c;火焰山&#xff0c;小岛&#xff0c;站立&#xff0c;携带魔兽&#xff0…

主干网络篇 | YOLOv8更换主干网络之ShuffleNetV2(包括完整代码+添加步骤+网络结构图)

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。ShuffleNetV2是一种轻量级的神经网络架构&#xff0c;用于图像分类和目标检测任务。它是ShuffleNet的改进版本&#xff0c;旨在提高模型的性能和效率。ShuffleNetV2相比于之前的版本&#xff0c;在保持模型轻量化的同时&am…

预备知识:深入理解接口测试!

实验简介 随着移动互联网甚至物联网的触角深入到人们生活的每个场景&#xff0c;每个角落&#xff0c;伴随而来的便是企业对其软件系统接口定义和研发&#xff0c;以便于进行数据传输和交换。由此导致目前企业急需大量专职接口测试工程师&#xff0c;因为接口测试天然具备自动…

c++算法学习笔记 (8) 树与图部分

1.树与图的存储 &#xff08;1&#xff09;邻接矩阵 &#xff08;2&#xff09;邻接表 // 链式前向星模板&#xff08;数组模拟&#xff09; #include <iostream> #include <cstring> #include <algorithm> using namespace std; const int N 100010, M …

安全性测试报告

我们出具报告&#xff0c;报告上是要体现安全性测评依据标准文件的。 这次出具的报告是按照GB 25000.51-2016标准&#xff0c;根据Q/GDW 1597-2015的测评项进行开展测评&#xff0c;根据10942-2018的具体测评方法进行编写报告 在标准文件中&#xff0c;有“安全漏洞” &#x…

【RS422】基于未来科技FT4232HL芯片的多波特率串口通信收发实现

功能简介 串行通信接口常常用于在计算机和低速外部设备之间传输数据。串口通信存在多种标准&#xff0c;以RS422为例&#xff0c;它将数据分成多个位&#xff0c;采用异步通信方式进行传输。   本文基于Xilinx VCU128 FPGA开发板&#xff0c;对RS422串口通信进行学习。   根…

家具工厂5G智能制造数字孪生可视化平台,推进家具行业数字化转型

家具制造5G智能制造工厂数字孪生可视化平台&#xff0c;推进家具行业数字化转型。随着科技的飞速发展&#xff0c;家具制造业正迎来一场前所未有的数字化转型。在这场家具制造业转型中&#xff0c;5G智能制造工厂数字孪生可视化平台发挥着至关重要的作用。 5G智能制造工厂数字孪…

MySQL语法分类 DQL(3)排序查询

为了更好的学习这里给出基本表数据用于查询操作 create table student (id int, name varchar(20), age int, sex varchar(5),address varchar(100),math int,english int );insert into student (id,name,age,sex,address,math,english) values (1,马云,55,男,杭州,66,78),…

MATLAB中的数据类型

MATLAB是一种高级编程语言和交互式环境&#xff0c;用于算法开发、数据可视化、数据分析和数值计算。在MATLAB中&#xff0c;数据类型是用于分类和定义存储在变量中数据种类的基本概念。选择适当的数据类型对于确保程序的正确性、有效性和内存效率至关重要。下面将详细解释MATL…

python企业编码管理的程序(附源码)

企业编码管理Python程序包介绍 在当今数字化时代&#xff0c;企业编码管理成为企业信息化建设中不可或缺的一环。有效的编码管理不仅有助于企业规范业务流程&#xff0c;提高数据处理效率&#xff0c;还能降低运营成本&#xff0c;增强市场竞争力。为此&#xff0c;我们推出了…