/**
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* deleteDuplicates(struct ListNode* head )
{
struct ListNode* p = head;
if(head == NULL || head == NULL)
return head;
while(p->next != NULL) //最后一个结点前
{
if(p->val == p->next->val) //相邻两值相等
{
p->next = p->next->next; //删掉后值,指针后移
}
else
p = p->next; //相邻两值不等,指针后移
}
return head;
}

京公网安备 11010502036488号