Advertisement
Guest User

Untitled

a guest
Jul 17th, 2019
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.92 KB | None | 0 0
  1. class Node:
  2. def __init__(self, val):
  3. self.val = val
  4. self.both = 0
  5.  
  6. def __str__(self):
  7. return str(self.val)
  8.  
  9. class XORLinkedList:
  10. def __init__(self):
  11. self.head = Node(None)
  12. self.tail = Node(None)
  13.  
  14. def add(element):
  15. newNode = Node(element)
  16. if self.head.val == None:
  17. self.head = self.tail = newNode
  18. else:
  19. newNode.both = get_pointer(self.tail)
  20. self.tail.both = self.tail.both ^ get_pointer(newNode)
  21. self.tail = newNode
  22.  
  23. def get(ind):
  24. previousAddr = 0
  25. current = this.head
  26. for i in range(0,ind-1):
  27. temp = get_pointer(current)
  28. current = dereference_pointer(previousAddr^current.both)
  29. previousAddr = temp
  30. if curret.both == previousAddr and i < ind-2:
  31. print("Invalid index.")
  32. return None
  33. return current
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement