82. 删除排序链表中的重复元素 II

class Solution {
public:
    ListNode* deleteDuplicates(ListNode* head) {
        ListNode* dummy=new ListNode(-1,nullptr);
        if(!head||!head->next)  return head;
        ListNode* a=head,*b=head->next,*tail=dummy;
        while(a&&b)
        {
            while(b&&a->val==b->val)
                b=b->next;
            if(a->next==b)
                tail=tail->next=a;
            a=b;
        }
        tail->next=nullptr;
        return dummy->next;
    }
};
posted @ 2023-03-30 13:32  穿过雾的阴霾  阅读(14)  评论(0)    收藏  举报