[leetCode]203. 移除链表元素

在这里插入图片描述

哑节点

删除链表的某个节点只需要操作该结点前一个节点的指针,假如删除的节点为头节点,那么就可以设置一个哑节点指向头节点,这样就统一了删除操作。

class Solution {
    public ListNode removeElements(ListNode head, int val) {
        ListNode node = new ListNode(-1);
        node.next = head;
        ListNode prev = node;
        ListNode cur = head;
        while (cur != null) {
            if (cur.val == val) {
                prev.next = cur.next;
                cur = cur.next;
            } else {
                 prev = prev.next;
                cur = cur.next;
            }
        }
        return node.next;
    }
}
原文地址:https://www.cnblogs.com/PythonFCG/p/13865710.html