【LeetCode】Remove Duplicates from Sorted List

来源:互联网 发布:访客网络会影响网速么 编辑:程序博客网 时间:2024/05/16 14:49

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) {        ListNode *ret=head;        ListNode *pre=head;        int flag;        while(NULL != pre && NULL != pre->next){            if(pre->val == pre->next->val){                pre->next=pre->next->next;            }else{                pre=pre->next;            }        }        return ret;    }};





0 0