203.移除链表元素

Posted 小刘你最强

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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
输出:[]

思路:可能删除的是头节点,需要使用傀儡节点,链表中删除某个节点需要使用前一个节点

class Solution 
    public ListNode removeElements(ListNode head, int val) 
        ListNode dummy = new ListNode(-1);
        dummy.next = head;
        ListNode cur = dummy;
        while(cur.next != null) 
            if(cur.next.val == val) 
                cur.next = cur.next.next;
             else 
                cur = cur.next;
            
        
        return dummy.next;
    

以上是关于203.移除链表元素的主要内容,如果未能解决你的问题,请参考以下文章

203. 移除链表元素

203链表-移除链表元素

203链表-移除链表元素

[JavaScript 刷题] 链表 - 移除链表元素, leetcode 203

[JavaScript 刷题] 链表 - 移除链表元素, leetcode 203

LeetCode ( 203 ) ---[移除链表元素]