Remove Duplicates from Sorted List II

Given the head of a sorted linked list, delete all nodes that have duplicate values, leaving only nodes with distinct values from the original list.

Because the linked list is sorted, duplicate values appear consecutively. Return the linked list sorted as well.

Example 1
[1] -> [2] -> [3] -> [3] -> [4] -> [4] -> [5] -> null
---
[1] -> [2] -> [5] -> null
Inputhead = [1,2,3,3,4,4,5]
Output[1,2,5]
The values 3 and 4 appear more than once, so all nodes with those values are removed.
Example 2
[1] -> [1] -> [1] -> [2] -> [3] -> null
---
[2] -> [3] -> null
Inputhead = [1,1,1,2,3]
Output[2,3]
The value 1 appears more than once, so all nodes with value 1 are removed.

Constraints

  • The number of nodes in the list is in the range [0, 300].
  • -100 <= Node.val <= 100
  • The list is guaranteed to be sorted in ascending order.

Asked at 10 companies

</>

Your Solution

(Ctrl/Cmd + Enter)

Switching Language

Loading template...

Loading...

Sign in to save your progress

AI code evaluation

Get a correctness verdict, missed edge cases, and complexity analysis of your solution.

Sign in to evaluate