LeetCode中怎么删除链表的节点
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,本篇文章给大家分享的是有关LeetCode中怎么删除链表的节点,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。给定单向链表的头指针和一个要
千家信息网最后更新 2026年11月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安全错误
数据库的锁怎样保障安全
互联网科技工作委员会主任
广州百单互联网科技有限公司
厦门中拓互联网络科技有限公司
互联网中国科技
互联网的科技创新
善班互联网科技
科技互联网公司logo
融贸通互联网科技
互联网科技大会案例
蓝色互联网科技
南平创想时代互联网科技有限公司
荆州市昕露互联网络科技有限公司
崇明区互联网教育科技售后服务
佛山市拉法互联网科技有限公司
工业互联网等科技实现智能化赋能
全球科技与互联网公司市值变化
广西科技产业互联网是什么
互联网科技手抄报图片
山东蛋芒互联网科技有限公司
青岛互联网科技园
咖啡豆
科技与互联网
腾讯科技 互联网女皇
赫美联合互联网科技
互联网科技公司名称
湖南一路畅行互联网科技
互联网公司黑科技创始人
科技大学互联网
版纳互联网科技选哪家
瑞安市蟠桃会互联网科技有限公司