1. 程式人生 > >*** 82 刪除排序連結串列中的重複元素II

*** 82 刪除排序連結串列中的重複元素II

    ListNode *deleteDuplicates(ListNode *head) {
        if (head == nullptr || head->next == nullptr)
            return head;
        ListNode prehead(-1);
        prehead.next = head;
        head = &prehead;
        ListNode *left, *right;
        while (head->next) {
            left = head->next;
            right = left;
            while (right->next && right->next->val == left->val)
                right = right->next;
            if (left == right)
                head = head->next;
            else
                head->next = right->next;
        }
        return prehead.next;
    }