# Definition for singly-linked list. classListNode: def__init__(self, x): self.val = x self.next = None defcreateLink_rearinsert(lista): head = ListNode(-1) rear = head for i in lista: new_node=ListNode(i) rear.next=new_node rear=new_node return head.next classSolution(object): defdeleteDuplicates(self, head): ifnot (head and head.next): return head current=head while current!=Noneand current.next!=None: if current.next.val==current.val: current.next=current.next.next else: current=current.next return head
# Definition for singly-linked list. classListNode: def__init__(self, x): self.val = x self.next = None defcreateLink_rearinsert(lista): head = ListNode(-1) rear = head for i in lista: new_node=ListNode(i) rear.next=new_node rear=new_node return head.next classSolution(object): defdeleteDuplicates(self, head): ifnot (head and head.next): return head a = head b = head.next while b: if a.val!=b.val: a=b b=b.next else: while b and a.val==b.val: b = b.next
a.next = b a=b b = b.next if b elseNone return head