LeetCode刷题(48)--Remove Duplicates from Sorted List II

来源:互联网 发布:php curl exec返回空 编辑:程序博客网 时间:2024/06/07 03:11

cur表示当前所在的Node,对于重复出现的Node会移到最后一个。
pre记录结果,res用于返回,pre的更改会体现在res上。
如果pre.next == cur,则说明没有重复,此时pre = pre.next Node进入res;
否则,则重复,只是将pre.next 移到下一个点等待对比。

class Solution(object):    def deleteDuplicates(self, head):        """        :type head: ListNode        :rtype: ListNode        """        if not head:            return head        res = ListNode(0)        res.next = head        pre = res        cur = head        while cur:            while cur.next and cur.val == cur.next.val:                cur = cur.next            if pre.next == cur:                pre = pre.next            else :                pre.next = cur.next            cur = cur.next        return res.next
阅读全文
0 0