Exemplo n.º 1
0
def partList(ll, n):

    more = LinkedListFIFO()
    less = LinkedListFIFO()

    node = ll.head

    while node:
        item = node.value

        if item < n:
            less.addNode(item)

        elif item > n:
            more.addNode(item)

        node = node.pointer

    less.addNode(n)
    nodemore = more.head

    while nodemore:
        less.addNode(nodemore.value)
        nodemore = nodemore.pointer

    return less
def isCircularll(ll):
    p1 = ll.head
    p2 = ll.head

    while p2:
        try:
            p1 = p1.pointer
            p2 = p2.pointer.pointer
        except:
            break

        if p1 == p2:
            return True
    return False


if __name__ == '__main__':

    ll = LinkedListFIFO()
    for i in range(10):
        ll.addNode(i)
    ll._printList()

    print(isCircularll(ll))

    lcirc = cicularLinkedListFIFO()
    for i in range(10):
        lcirc.addNode(i)
    print(isCircularll(lcirc))
 def _createHashTable(self):
     for i in range(self.size) :
         self.slots.append(LinkedListFIFO())