题目描述
思路分析
链表模拟题。
主要就是指针修改操作的熟练运用。
代码实现
class Solution {
public:
ListNode* deleteDuplication(ListNode* head) {
auto dummy=new ListNode(-1);
dummy->next=head;
auto p=dummy;
while(p->next){
auto q=p->next;
while(q&&p->next->val==q->val) q=q->next;
if(p->next->next==q) p=p->next;
else p->next=q;
}
return dummy->next;
}
};