Remove Dups From Unsorted Linked List

一つずつ舐めながら,重複しているならポインタの付替えをする

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
class LinkedListNode:
    def __init__(self, data, next_node):
        self.data = data
        self.next_node = next_node

def remove_dups_from_linked_list(head):
    table = set()
    prev = None
    curr = head
    while curr is not None:
        if curr.data not in table:
            table.add(curr.data)
            prev = curr
        else:
            prev.next_node = curr.next_node
        curr = curr.next_node
Hugo で構築されています。
テーマ StackJimmy によって設計されています。