leetcode 83. Remove Duplicates from Sorted List

来源:互联网 发布:淘宝如何设置主营类目 编辑:程序博客网 时间:2024/05/22 15:35
/** * Definition for singly-linked list. * struct ListNode { *     int val; *     ListNode *next; *     ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:    ListNode* deleteDuplicates(ListNode* head) {        if(head == NULL) return NULL;        ListNode * here = head->next,*h = head;        while(here != NULL){            if(head->val == here->val){                here = here->next;            }            else {                head->next = here;                head = head->next;                here - here->next;            }        }        head->next =NULL;        return h;    }};


快一点的

/** * Definition for singly-linked list. * struct ListNode { *     int val; *     ListNode *next; *     ListNode(int x) : val(x), next(NULL) {} * }; */class Solution {public:    ListNode* deleteDuplicates(ListNode* head) {        if(head == NULL) return NULL;        ListNode * here = head->next,*h = head;        int n = head->val;        while(here != NULL){            if(here->val == n){                here = here->next;            }            else {                h->next=here;                h = h->next;                n=here->val;                here=here->next;            }        }        h->next=NULL;        return head;    }};


0 0