移除重复节点

题目:
编写代码,移除未排序链表中的重复节点。保留最开始出现的节点。

思路:
很简单一道题,哈希表

代码:

public ListNode removeDuplicateNodes(ListNode head) {
        if(head == null){
            return null;
        }
        Set<Integer> set = new HashSet<>();
        set.add(head.val);
        ListNode pre = head;
        ListNode tmp = head.next;
        while(tmp!=null){
            if(set.contains(tmp.val)){
                pre.next = tmp.next;
            }else{
                set.add(tmp.val);
                pre = pre.next;
            }
            tmp = tmp.next;
        }
        return head;
    }
posted @ 2020-06-26 09:52  jackandtwo  阅读(206)  评论(0)    收藏  举报