Advertisement
RossitsaR

Stack

Aug 3rd, 2022
217
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.09 KB | None | 0 0
  1.  
  2. from src.linked_list_node import LinkedListNode
  3.  
  4.  
  5. class Node:
  6. def __init__(self, value):
  7. self.value = value
  8. self.next = None
  9.  
  10.  
  11. class CustomStack:
  12. def __init__(self):
  13. self.head = None
  14. self.count = 0
  15.  
  16. def push(self, value):
  17. if self.head is not None:
  18. new_node = Node(value)
  19. new_node.next = self.head
  20. self.head = new_node
  21.  
  22. else:
  23. self.head = Node(value)
  24.  
  25. self.count += 1
  26.  
  27. def pop(self):
  28. if self.head is not None:
  29. popped = self.head.value
  30. self.head = self.head.next
  31. self.count -= 1
  32. return popped
  33. else:
  34. raise ValueError
  35.  
  36. def is_empty(self):
  37. if self.count == 0:
  38. return True
  39. else:
  40. return False
  41.  
  42. def peek(self):
  43. if self.head is None:
  44. raise ValueError
  45. else:
  46. return self.head.value
  47.  
  48. print()
  49.  
  50.  
  51. stack = CustomStack()
  52. stack.push(1)
  53. stack.push(2)
  54. # stack.push(3)
  55.  
  56. print(stack.count)
  57.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement