Last updated 2 years ago
问题简述
删除给出链表中的重复元素(链表中元素从小到大有序),使链表中的所有元素都只出现一次 例如: 给出的链表为 1→1→2, 返回 1→2. 给出的链表为 1→1→2→3→3, 返回 1→2→3.
删除有序链表中重复的元素-I_牛客题霸_牛客网
思路
因为要保留范围内的第一个节点,因此可以省略 pre;
pre
# class ListNode: # def __init__(self, x): # self.val = x # self.next = None # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param head ListNode类 # @return ListNode类 # class Solution: def deleteDuplicates(self , head: ListNode) -> ListNode: # write code here cur = head while cur: nxt = cur.next if nxt and nxt.val == cur.val: while nxt.next and nxt.val == nxt.next.val: nxt = nxt.next cur.next = nxt.next cur = cur.next return head