class Solution {
public:
ListNode* deleteDuplicates(ListNode* head) {
// 空链表或只有一个节点的情况
if (!head || !head->next) {
return head;
}
ListNode *current = head;
while (current && current->next) {
// 如果当前节点与下一个节点值相同
if (current->val == current->next->val) {
// 跳过重复节点
current->next = current->next->next;
// 注意:这里不移动current,因为可能有多个连续重复
} else {
// 移动到下一个节点
current = current->next;
}
}
return head;
}
};

京公网安备 11010502036488号