lc83-删除排序链表中的重复数字2

linklist *deleteDuplicates2(linklist *head){//双指针法
    linklist *p,*q;
    if(head->next==NULL||head->next->next==NULL){
        return head;
    }
    p=head->next;
    q=p->next;
    while(q!=NULL){
        if(q->data!=p->data){
            p=p->next;
            q=q->next;
        }
        else{
            while(p->data==q->data){
                q=q->next;
                if(q==NULL){
                    p->next=q;
                    return head;
                }
            }
            
                p->next=q;
                p=q;
                q=q->next;
            
        }
    }
    return head;
}

你可能感兴趣的:(lc83-删除排序链表中的重复数字2)