Leetcode(83)

class Solution {
public:
    ListNode* deleteDuplicates(ListNode* head) {
        ListNode* curr=head;
        while(curr && curr->next){
            if(curr->val==curr->next->val )
                curr->next=curr->next->next;
            else{
                curr=curr->next;
            }
            
        }
        return head;
    }
};

这个题目的答案不用多讲,答案不言自明。但是我在做这个题目的时候犯了一个错误,curr=curr->next这个不是每次都要更新的。只有当找不到重复的时候我们才再去更新一次。这个其实你也想到过,你当时定义了一个dhead指针,但很复杂,不简洁。

留下评论