203 删除链表中等于给定值 val 的所有节点。
示例:
输入: 1->2->6->3->4->5->6, val = 6
输出: 1->2->3->4->5
# Definition for singly-linked list.
class ListNode:
def __init__(self, x):
self.val = x
self.next = None
class Solution:
def removeElements(self, head: ListNode, val: int) -> ListNode:
p = head
if p == None:
return None
# 若是前面好多个点都是要删除的,所以要用while
while (head and head.val == val):
head = head.next
q = p.next
while(q):
if q.val == val:
p.next = q.next
q = q.next
else:
p = q
q = q.next
return head