首页 > 其他 > 详细

[leetcode-83-Remove Duplicates from Sorted List]

时间:2017-04-07 19:59:30      阅读:180      评论:0      收藏:0      [点我收藏+]

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.

思路:

用两个指针,一个在前,一个在后,比较两个结点的值,如果相等,后一个指针后移,再比较。

如果不相等,则前一个指针指向后一个指针,然后同时后移。

ListNode* deleteDuplicates(ListNode* head)
    {
        if (head == NULL || head->next == NULL) return head;        
        ListNode* p = head, *q = head->next;
        while (q != NULL)
        {
            if (p->val == q->val){}
            else
            {
                p->next = q;
                p = q;
            }
            q = q->next;
        }
        p->next = q;
        return head;
    }

 

[leetcode-83-Remove Duplicates from Sorted List]

原文:http://www.cnblogs.com/hellowooorld/p/6679588.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!