Remove Duplicates from Sorted List II

 

//recursive
    ListNode *deleteDuplicates(ListNode *head) {
        // Note: The Solution object is instantiated only once and is reused by each test case.
        if(!head||!head->next) return head;
        
        ListNode* p = head->next;
        if(head->val == p->val)
        {
            while(head->val==p->val)
            {
                p = p->next;
                if(!p)
                    break;
            }
            
            return deleteDuplicates(p);
        }else
        {
            head->next = deleteDuplicates(p);
            return head;
        }
        
    }

  

 

posted @ 2013-10-25 11:08  summer_zhou  阅读(141)  评论(0编辑  收藏  举报