面试题 02.01. 移除重复节点

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
class Solution {
public ListNode removeDuplicateNodes(ListNode head) {
Set<Integer> visitedSet = new HashSet<>();
ListNode pre = null, curr = head;
while (curr != null) {
if (visitedSet.contains(curr.val)) {
pre.next = curr.next;
} else {
visitedSet.add(curr.val);
pre = curr;
}
curr = curr.next;
}

return head;
}
}

References

面试题 02.01. 移除重复节点