Esempio n. 1
0
import SinglyLinkedList


def reverseLinkedList(myLinkedList):
    previous = None
    current = myLinkedList.head
    while (current != None):
        temp = current.next
        current.next = previous
        previous = current
        current = temp
    myLinkedList.head = previous


if __name__ == '__main__':
    myLinkedList = SinglyLinkedList.LinkedList()
    for i in range(10, 0, -1):
        myLinkedList.insertAtStart(i)

    print('Original:', end=' ')
    myLinkedList.printLinkedList()
    print()
    print('Reversed:', end=' ')
    reverseLinkedList(myLinkedList)
    myLinkedList.printLinkedList()

    # OUTPUT:
    # Original: 1 2 3 4 5 6 7 8 9 10
    # Reversed: 10 9 8 7 6 5 4 3 2 1
__author__ = 'ankit.b.patel'
import SinglyLinkedList
import DoublyLinkedList

if __name__ == "__main__":
    #-----------------Implementation of Singly Linked List------------------#
    ll = SinglyLinkedList.LinkedList()
    print "Before Adding Nodes :"
    ll.Print()
    ll.AddNode(1)
    ll.AddNode(2)
    ll.AddNode(1)
    ll.AddNode(1)
    ll.AddNode(1)
    ll.AddNode(3)
    ll.AddNode(4)
    ll.AddNode(5)
    ll.AddNode(1)
    ll.AddNode(5)
    print "After Adding Nodes :"
    ll.Print()

    ll.InsertNodeAfterNode(ll.GetNodeAtPosition(1), 5)
    print "After Inserting node (data=5) at position 2"
    ll.Print()

    ll.AddNodeInFront(10)
    print "After Inserting node at Front"
    ll.Print()

    ll.RemoveDuplicates_withbuffer()