LeetCode中怎么删除链表的节点
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,本篇文章给大家分享的是有关LeetCode中怎么删除链表的节点,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。给定单向链表的头指针和一个要
千家信息网最后更新 2025年12月02日LeetCode中怎么删除链表的节点
本篇文章给大家分享的是有关LeetCode中怎么删除链表的节点,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
给定单向链表的头指针和一个要删除的节点的值,定义一个函数删除该节点。
返回删除后的链表的头节点。
示例 1:
输入: head = [4,5,1,9], val = 5输出: [4,1,9]解释: 给定你链表中值为 5 的第二个节点,那么在调用了你的函数之后,该链表应变为 4 -> 1 -> 9.
示例 2:
输入: head = [4,5,1,9], val = 1输出: [4,5,9]解释: 给定你链表中值为 1 的第三个节点,那么在调用了你的函数之后,该链表应变为 4 -> 5 -> 9.
说明:
题目保证链表中节点的值互不相同若使用 C 或 C++ 语言,你不需要 free 或 delete 被删除的节点
思路
特例处理: 当应删除头节点 head 时,直接返回 head.next 即可。
初始化: pre = head , cur = head.next 。
定位节点: 当 cur 为空 或 cur 节点值等于 val 时跳出。
保存当前节点索引,即 pre = cur 。
遍历下一节点,即 cur = cur.next 。
删除节点: 若 cur 指向某节点,则执行 pre.next = cur.next 。(若 cur 指向 nullnull ,代表链表中不包含值为 val 的节点。
返回值: 返回链表头部节点 head 即可。
代码
/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNode(int x) { val = x; } * } */class Solution { public ListNode deleteNode(ListNode head, int val) { if(head.val == val){ return head.next; } ListNode pre = head, cur = head.next; while(cur != null && cur.val != val){ pre = cur; cur = cur.next; } if(cur != null){ pre.next = cur.next; } return head; }}以上就是LeetCode中怎么删除链表的节点,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
节点
函数
中值
指向
更多
知识
示例
篇文章
应变
解释
输入
输出
实用
相同
三个
代码
代表
单向
头部
就是
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
走小路网络技术
梦幻西游天涯若比邻是哪个服务器
gt赛车7连不上服务器1.07
呈现数据库数据到页面
软件开发实战
php图片保存到数据库
郑州动狮网络技术
稿费统计数据库设置
mdf数据库导入
精准查看数据库信息
数据库中没有user数据库
led大屏服务器
U8服务器增加补丁
群晖nas直播服务器搭建
奉贤区推广软件开发设备
杨凌IOS软件开发招聘
ios开发用软件开发
浙江pdu服务器电源价格
汕尾电商系统软件开发
网络安全手抄报简单一些
网络安全哪三样
中国网络安全防御能力
excel怎么连接数据库
富土康资讯及网络安全试卷
软件开发回购协议
学习软件开发需要什么电脑
淄川mrp管理软件开发公司
阳江无限软件开发报价表
汕尾电商系统软件开发
网络安全和软件正版化