首页 > 其他 > 详细

[LeetCode 题解]: Remove Duplicates from Sorted List

时间:2014-07-29 11:29:56      阅读:332      评论: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.

题意:给定一个已排序的链表,删除其中重复的元素,保证每个元素有且仅有一个。

使用两个指针,分别指向前一个元素,和当前元素,比较两者。如果相同,则删除当前元素;否则,将当前元素换成新值。

public:
    ListNode *deleteDuplicates(ListNode *head) {
        if(head==NULL || head->next==NULL) return head;
        ListNode *pre,*tail;
        pre=head;
        tail=head->next;
        while(tail){
            if(tail->val == pre->val){
                pre->next=tail->next;
            }else{
                pre =pre->next;
            }
            tail=tail->next;
        }
        return head;        
    }
};

转载请注明出处: http://www.cnblogs.com/double-win/ 谢谢!

[LeetCode 题解]: Remove Duplicates from Sorted List,布布扣,bubuko.com

[LeetCode 题解]: Remove Duplicates from Sorted List

原文:http://www.cnblogs.com/double-win/p/3874015.html

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