AlgoMaster Logo

Remove Duplicates from Sorted List II

values=[1, 2, 3, 3, 4, 4, 5]
1public ListNode deleteDuplicates(ListNode head) {
2    ListNode dummy = new ListNode(0);
3    dummy.next = head;
4    ListNode prev = dummy;
5    ListNode curr = head;
6
7    while (curr != null) {
8        if (curr.next != null && curr.val == curr.next.val) {
9            // Skip all duplicates
10            while (curr != null && curr.val == prev.next.val) {
11                curr = curr.next;
12            }
13            prev.next = curr;
14        } else {
15            prev = curr;
16            curr = curr.next;
17        }
18    }
19
20    return dummy.next;
21}
0 / 18
1233445head