( 链表) 203. 移除链表元素 ——【Leetcode每日一题】

news/2024/4/15 14:59:53

❓203. 移除链表元素

难度:简单

给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点

示例 1:

在这里插入图片描述

输入:head = [1,2,6,3,4,5,6], val = 6
输出:[1,2,3,4,5]

示例 2:

输入:head = [], val = 1
输出:[]

示例 3:

输入:head = [7,7,7,7], val = 7
输出:[]

提示:

  • 列表中的节点数目在范围 [ 0 , 1 0 4 ] [0, 10^4] [0,104]
  • 1 <= Node.val <= 50
  • 0 <= val <= 50

💡思路:

添加一个虚拟头结点,可以统一化处理!

🍁代码:(Java、C++)

Java

/*** Definition for singly-linked list.* public class ListNode {*     int val;*     ListNode next;*     ListNode() {}*     ListNode(int val) { this.val = val; }*     ListNode(int val, ListNode next) { this.val = val; this.next = next; }* }*/
class Solution {public ListNode removeElements(ListNode head, int val) {ListNode h = new ListNode();h.next = head;head = h;while(h.next != null){if(h.next.val == val){h.next = h.next.next;}else{h = h.next;}}return head.next;}
}

C++

/*** Definition for singly-linked list.* struct ListNode {*     int val;*     ListNode *next;*     ListNode() : val(0), next(nullptr) {}*     ListNode(int x) : val(x), next(nullptr) {}*     ListNode(int x, ListNode *next) : val(x), next(next) {}* };*/
class Solution {
public:ListNode* removeElements(ListNode* head, int val) {ListNode* h = new ListNode();h->next = head;head = h;while(h->next != nullptr){if(h->next->val == val){h->next = h->next->next;}else{h = h->next;}}h = head->next;delete head;return h;}
};

🚀 运行结果:

在这里插入图片描述

🕔 复杂度分析:

  • 时间复杂度 O ( n ) O(n) O(n),其中 n 为链表的长度。需要遍历链表一次。
  • 空间复杂度 O ( 1 ) O(1) O(1)

题目来源:力扣。

放弃一件事很容易,每天能坚持一件事一定很酷,一起每日一题吧!
关注我LeetCode主页 / CSDN—力扣专栏,每日更新!

注: 如有不足,欢迎指正!


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

相关文章

GameFramework框架详解之 FileSystem虚拟文件系统

一.前言 GameFramework是一个功能非常完整,结构非常合理的游戏框架,不仅适合实际开发使用,更适合通过它的源码来学习,我个人觉得GF框架中很多东西让我受益匪浅,之前也介绍过它的其他模块。 今天我们来着重介绍一下它的FileSystem虚拟文件系统,GF的虚拟文件系统,使用类似…

实在智能魅力抢眼!携超自动化解决方案和校企合作新范式点燃第七届世界智能大会

为深入实施创新驱动发展战略&#xff0c;推动智能科技赋能经济社会发展&#xff0c;促进校企双方交换需求清单&#xff0c;全方位搭建校企握手通道&#xff0c;5月18日&#xff0c;由国家发展和改革委员会、科学技术部、国家广播电视总局、中国科学院等联合主办的第七届世界智能…

用Vue简单开发一个学习界面

文章目录 一.首先创建我们的Vue文件夹二.源代码BodyDemoHearderDemoHomeDemoMarkdownDemoFileManager.jsMain.js&#xff08;注意绑定&#xff09;APP源代码 效果图&#xff08;按钮功能&#xff09;新增二级菜单&#xff08;v-for&#xff09;需要的可以私信 一.首先创建我们的…

rails中--a链接的使用

在Rails中创建a链接&#xff0c;需要使用link_to方法。该方法的语法为&#xff1a; link_to(body, url, options {}) 其中&#xff0c;body参数指定链接的显示文本&#xff0c;url参数指定链接的目标地址&#xff0c;options参数为可选项&#xff0c;用于指定链接的其他属性…

广域通信网 - HDLC 高级数据链路控制协议

文章目录 1 概述2 HDLC2.1 帧类型2.2 帧结构 3 扩展3.1 网工软考真题 1 概述 #mermaid-svg-JEuFH1qP4tY5jI5p {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-JEuFH1qP4tY5jI5p .error-icon{fill:#552222;}#mermaid-…

基于遗传算法和非线性规划的函数寻优算法(matlab实现)

以下内容大部分来源于《MATLAB智能算法30个案例分析》&#xff0c;仅为学习交流所用。 1 理论基础 1.1 非线性规划 非线性规划是20世纪50年代形成的一门新兴学科。1951年库恩和塔克发表的关于最优性条件(后来称为库恩塔克条件)的论文是非线性规划诞生的标志。非线性规划研究…

郑州市元宇宙产业发展实施方案发布,中创助力元宇宙创新建设!

如果说2022年的“元宇宙”赛道&#xff0c;尚是以Meta为首&#xff0c;而今&#xff0c;政府也纷纷参与其中。 数据显示截至目前&#xff0c;国内已有至少30个地区&#xff08;涉及10个省级行政区&#xff09;颁布了元宇宙相关的支持性政策或征求意见稿&#xff0c;政策文件名中…

MATLAB算法实战应用案例精讲-【数模应用】主效应交互效应单独效应

前言 在多因素实验研究中,主效应就是在考察一个变量是否会对因变量的变化发生影响的时候,不考虑其他研究变量的变化,或者说将其他变量的变化效应平均掉。换句话说,就是其他研究变量都不变化的情况下,单独考察一个自变量对因变量的变化效应。 交互效应,则是反映两个或两个…

DAY 62 mysql的高级语句

表连接查询 MYSQL数据库中的三种连接&#xff1a; inner join(内连接)&#xff1a;只返回两个表中联结字段相等的行&#xff08;有交集的值&#xff09;left join(左连接)&#xff1a;返回包括左表中的所有记录和右表中联结字段相等的记录right join(右连接)&#xff1a;返回…

探索商机,连接世界——第133届广交会买家信息帮你快速找到合适的客户

亲爱的商家和供应商们&#xff01;&#xff01; 您是否在寻找拓展市场和国际贸易的机会&#xff1f;你想找到合适的客户&#xff0c;推广你的产品和服务&#xff0c;取得更大的商业成功吗&#xff1f;那么&#xff0c;我们给你带来了一个难得的机会&#xff01; 随着第133届广…

CBLUE_中文生物医学语言理解评估基准_源码详解

CBLUE_中文生物医学语言理解评估基准_源码详解 源码链接&#xff1a;https://github.com/CBLUEbenchmark/CBLUE 项目中包括八个不同的中文医学NLP任务&#xff1a;1.中文医学命名实体识别&#xff08;CMeEE&#xff09;、2.中文医学文本实体关系抽取&#xff08;CMeIE&#xf…

港联证券|北向资金为何大量买入?哪些股容易受到青睐?

北向资金由于流动情况透明且披露及时&#xff0c;一直备受投资者们的关注。那么北向资金为何大量买入&#xff1f;哪些股容易受到青睐&#xff1f;港联证券也为大家准备了相关内容&#xff0c;以供参考。 北向资金为何大量买入&#xff1f; 1、中国经济增长预期较好。这为北向…

MyBatis操作数据库表和动态SQL的使用

目录 1.MyBatis开发环境的搭建和测试 2.MyBatis基本操作 2.0 准备工作 2.1 新增操作 2.2 删除、修改、查询操作 2.3 #{param} 和 ${param}的使用和区别 2.4 实体对象属性和数据库字段名称不同时如何映射&#xff1f; 3. MyBatis多表查询 3.0 准备工作 3.1 一对一的表…

字节内部又推出最新spring进阶全家桶了!强烈建议人手一份!

前言 一份 Alibaba 内部强烈推荐的“玩转 Spring 全家桶的 PDF” &#xff0c;小编也不是个吝啬的人&#xff0c;好的东西当然要一起分享咯。今天小编就带你一站通关 Spring全家桶&#xff0c;让你一路通关轻松斩获大厂 Offer&#xff01; Spring 框架自 2002 年诞生以来一直…

SpringBoot枚举入参实战

文章目录 前言一、什么是枚举&#xff1f;二、枚举的优点三、枚举的缺点四、使用步骤1.代码实现1.1.枚举1.2.实体1.3.控制层 2.Postman测试2.1.Get请求2.1.1.枚举参数2.1.2.对象枚举属性参数 2.2.Post请求2.2.1.枚举参数2.2.2.对象枚举属性参数 2.3.Put请求2.3.1.枚举参数2.3.2…

ISO9001带CNAS和不带标的有哪些区别?ISO分别有哪些认可标识?

证书上带有CNAS标志&#xff1a; 1、表明具备了按相应认可准则开展认证、检测或校准服务的技术能力&#xff1b; 2、获得签署互认协议方国家和地区认可机构的承认&#xff1b; 3、有机会参与国际间合格评定机构认可双边、多边合作交流&#xff1b; 4、可在认可的范围内使用…

ACL2022 | 大模型微调哪家好?小孩子才做选择,成年人当然是全都要

一、概述 title&#xff1a;UNIPELT: A Unified Framework for Parameter-Efficient Language Model Tuning 论文地址&#xff1a;https://arxiv.org/abs/2110.07577 代码&#xff1a;GitHub - morningmoni/UniPELT: Code for paper "UniPELT: A Unified Framework for…

打卡智能中国(五):博士都去哪儿了?

《打卡智能中国》系列更新了几期&#xff0c;有读者表示&#xff0c;很爱看这类接地气的真实故事&#xff0c;也有读者反映&#xff0c;不是电工&#xff0c;就是文员、农民、治沙人&#xff0c;人工智能不是高精尖学科吗&#xff1f;那些学历很高的博士都去哪儿了&#xff1f;…

内核与内核模块

文章目录 内核与内核模块内核模块与依赖性depmod使用案例 查看内核模块lsmodmodinfo使用案例 内核模块的加载与删除insmod使用案例 rmmod使用案例 modprobe使用案例 内核模块的额外参数设置&#xff1a;/etc/modprobe.d/*.conf 内核与内核模块 在整个启动的过程中&#xff0c;…

盘点2023天猫淘宝618满减规则和活动时间表

盘点2023天猫淘宝618满减规则和活动时间表 618年中大促活动转眼就要到了&#xff0c;大家又将迎来一场购物狂欢盛宴。每年天猫淘宝都会推出一系列的优惠满减活动&#xff0c;打算囤货的小伙伴们已经可以着手准备起来了。为了方便大家选购&#xff0c;小编赵一八笔记这就为大家整…
最新文章