Open
Description
1.将 curr 指针指向链表头节点
2.遍历链表,注意边界条件
3.如果当前节点与它后面的节点值相等,则删除它后面与它重复的节点
4.不重复则继续遍历,最后返回头节点
const deleteDuplicates = function(head) {
let curr = head
while (curr !== null && curr.next !== null) {
if (curr.val === curr.next.val) {
curr.next = curr.next.next
} else {
curr = curr.next
}
}
return head
}
- 时间复杂度: O(n)
- 空间复杂度: O(1)