0%

删除排序链表中的重复元素

给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。
示例1

1
2
输入: 1->1->2
输出: 1->2

示例2

1
2
输入: 1->1->2->3->3
输出: 1->2->3

解答:

1
2
3
4
5
6
7
8
9
ListNode* deleteDuplicates(ListNode* head) {
if (!head) return nullptr;
auto next = head->next;
while (next && next->val == head->val) {
next = next->next;
}
head->next = deleteDuplicates(next);
return head;
}