

我代码中没有对原表进行任何修改呀。
while(head->next->val == temp)
head=head->next;
这个循环只是把head指向值不同的那个点。并没有把那些相同的点从表里面删除呀。
上面的代码改成下面:
ListNode *tmpNode = head->next;
while(tmpNode->val == temp){
tmpNode=tmpNode->next;
}
你再调一下然后看看还有没有其他问题。因为你的代码不全。
如是对你有帮助可以关注我的帐号,我后面也会发布C++的文章。
head->next = tmpNode;