leetcode83(刪除排序鏈表中的重複元素)--C語言實現

求:spa

給定一個排序鏈表,刪除全部重複的元素,使得每一個元素只出現一次。排序

示例 1:it

輸入: 1->1->2
輸出: 1->2
示例 2:io

輸入: 1->1->2->3->3
輸出: 1->2->3List

 

解:鏈表

/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     struct ListNode *next;
 * };
 */
struct  ListNode* deleteDuplicates( struct  ListNode* head){
     struct  ListNode* p=head;
     if (head==NULL) 
        return  head;
     while (p->next!=NULL){
         if (p->val==p->next->val){
             struct  ListNode* tmp = p->next;
            p->next=p->next->next;
            free(tmp);
        } else {
            p=p->next;
        }
     }    
     return  head;
}
相關文章
相關標籤/搜索