Leetcode.移除链表元素
指针(哨兵节点)
哨兵节点解密了
哨兵节点的提出是为了避免遇到需要删除头节点的情况。其主要目的是使链表标准化,如使链表永不为空、永不无头、简化插入和删除。
建立两个指针,一个指向当前节点,一个指向前一个节点。
class Solution(object):
def removeElements(self, head, val):
Newhead=ListNode(0,head)
prev,cur=Newhead,head
while cur:
if cur.val==val:
prev.next=cur.next
else:
prev=cur
cur=cur.next
return Newhead.next