[leetcode] problem 83 – remove duplicates from sorted list

Given a sorted linked list, delete all duplicates such that each element appear only once.

Example

No.1

Input: 1->1->2

Output: 1->2

No.2

Input: 1->1->2->3->3

Output: 1->2->3

Code

1
2
3
4
5
public class  {
int val;
ListNode next = null;
ListNode(int x) { val = x; }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
public ListNode deleteDuplicates(ListNode head) {
if (head == null)
return null;

ListNode current = head;

while (current.next != null) {
if (current.val == current.next.val)
current.next = current.next.next;
else
current = current.next;
}

return head;
}