83 删除排序链表中的重复元素
给定一个已排序的链表的头 head
, 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。
主要是注意cur的下一个不能为空的循环终止条件,以及cur每次要往后移动。
# Definition for singly-linked list.
# class ListNode:
# def __init__(self, val=0, next=None):
# self.val = val
# self.next = next
class Solution:
def deleteDuplicates(self, head: Optional[ListNode]) -> Optional[ListNode]:
if head == None:return
dummy = ListNode(val = None, next = head)
cur = dummy.next
while cur.next != None:
if cur.next.val == cur.val:
cur.next = cur.next.next
else:cur = cur.next
return dummy.next