给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。
示例 1:
输入: 1->1->2输出: 1->2示例 2:
输入: 1->1->2->3->3输出: 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) {
auto l=
new ListNode(-
1);
l->next=
head;
if(!head)
return NULL;
auto p=l->
next;
while(p->
next){
if(p->val==p->next->
val)
p->next=p->next->
next;
else
p=p->
next;
}
return l->
next;
}
};
转载于:https://www.cnblogs.com/programyang/p/11160984.html