链表题--04----删除链表中给定的节点
Posted 高高for 循环
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了链表题--04----删除链表中给定的节点相关的知识,希望对你有一定的参考价值。
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
删除链表中给定的节点
https://leetcode-cn.com/problems/shan-chu-lian-biao-de-jie-dian-lcof/
题目:
边界条件
如果要删除的值,正好是是头结点的value, 我们就需要找到第一个不需要删的位置
代码
package class03;
public class Code02_DeleteGivenValue
public class ListNode
int val;
ListNode next;
ListNode(int x)
val = x;
// head = deleteNode(head, 2);
public ListNode deleteNode(ListNode head, int val)
// head来到第一个不需要删的位置
while (head != null)
if (head.val != val)
break;
head = head.next;
// 1 ) head == null
// 2 ) head != null
ListNode pre = head;
ListNode cur = head;
while (cur != null)
if (cur.val == val)
pre.next = cur.next;
else
pre = cur;
cur = cur.next;
return head;
以上是关于链表题--04----删除链表中给定的节点的主要内容,如果未能解决你的问题,请参考以下文章
力扣——链表题 203.移除链表元素83.删除排序链表中重复元素82.删除排序链表中重复元素Ⅱ206.反转链表 876.链表的中间节点