【LeetCode】Remove Duplicates from Sorted List

来源:互联网 发布:温泽三坐标编程视频 编辑:程序博客网 时间:2024/06/13 08:55

Given a sorted linked list, delete all duplicates such that each element appear only once.

For example,
Given 1->1->2, return 1->2.
Given 1->1->2->3->3, return 1->2->3.


/** * 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(NULL == head)            return NULL;        ListNode *p = head;        ListNode *q = head->next;        while(q)        {            if(p->val == q->val)            {                ListNode *t = q;                p->next = q->next;                q = p->next;                delete t;            }            else            {                p = q;                q = q->next;            }        }        return head;    }};

不能省略
  1. if(NULL == head)  
  2.             return NULL; 
如果head为空,return head; 并不等于 return NULL; ?

0 0
原创粉丝点击