FutureDreams

ListNode with loop

Dec 16th, 2021 (edited)
251
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.64 KB | None | 0 0
  1. class ListNodeIterator:
  2.     def __init__(self, node):
  3.         self.current_node = ListNode(None)
  4.         self.current_node.next = node
  5.  
  6.     def __next__(self):
  7.         if not self.current_node.next:
  8.             raise StopIteration
  9.         self.current_node = self.current_node.next
  10.         return self.current_node
  11.  
  12.  
  13. class ListNode:
  14.     def __init__(self, value):
  15.         self.value = value
  16.         self.next = None
  17.  
  18.     def __iter__(self):
  19.         return ListNodeIterator(self)
  20.  
  21.     def __repr__(self):
  22.         return f"{self.value}"
  23.  
  24.  
  25. list_node = ListNode(1)
  26. list_node.next = ListNode(2)
  27.  
  28. for ln in list_node:
  29.     print(ln)
  30.  
Add Comment
Please, Sign In to add comment