@@ -30,7 +30,7 @@ def make_tree() -> Node | None:
3030 return tree
3131
3232
33- def preorder (root : Node | None ) -> Generator [int , None , None ]:
33+ def preorder (root : Node | None ) -> Generator [int ]:
3434 """
3535 Pre-order traversal visits root node, left subtree, right subtree.
3636 >>> list(preorder(make_tree()))
@@ -43,7 +43,7 @@ def preorder(root: Node | None) -> Generator[int, None, None]:
4343 yield from preorder (root .right )
4444
4545
46- def postorder (root : Node | None ) -> Generator [int , None , None ]:
46+ def postorder (root : Node | None ) -> Generator [int ]:
4747 """
4848 Post-order traversal visits left subtree, right subtree, root node.
4949 >>> list(postorder(make_tree()))
@@ -56,7 +56,7 @@ def postorder(root: Node | None) -> Generator[int, None, None]:
5656 yield root .data
5757
5858
59- def inorder (root : Node | None ) -> Generator [int , None , None ]:
59+ def inorder (root : Node | None ) -> Generator [int ]:
6060 """
6161 In-order traversal visits left subtree, root node, right subtree.
6262 >>> list(inorder(make_tree()))
@@ -69,7 +69,7 @@ def inorder(root: Node | None) -> Generator[int, None, None]:
6969 yield from inorder (root .right )
7070
7171
72- def reverse_inorder (root : Node | None ) -> Generator [int , None , None ]:
72+ def reverse_inorder (root : Node | None ) -> Generator [int ]:
7373 """
7474 Reverse in-order traversal visits right subtree, root node, left subtree.
7575 >>> list(reverse_inorder(make_tree()))
@@ -93,7 +93,7 @@ def height(root: Node | None) -> int:
9393 return (max (height (root .left ), height (root .right )) + 1 ) if root else 0
9494
9595
96- def level_order (root : Node | None ) -> Generator [int , None , None ]:
96+ def level_order (root : Node | None ) -> Generator [int ]:
9797 """
9898 Returns a list of nodes value from a whole binary tree in Level Order Traverse.
9999 Level Order traverse: Visit nodes of the tree level-by-level.
@@ -116,9 +116,7 @@ def level_order(root: Node | None) -> Generator[int, None, None]:
116116 process_queue .append (node .right )
117117
118118
119- def get_nodes_from_left_to_right (
120- root : Node | None , level : int
121- ) -> Generator [int , None , None ]:
119+ def get_nodes_from_left_to_right (root : Node | None , level : int ) -> Generator [int ]:
122120 """
123121 Returns a list of nodes value from a particular level:
124122 Left to right direction of the binary tree.
@@ -128,7 +126,7 @@ def get_nodes_from_left_to_right(
128126 [2, 3]
129127 """
130128
131- def populate_output (root : Node | None , level : int ) -> Generator [int , None , None ]:
129+ def populate_output (root : Node | None , level : int ) -> Generator [int ]:
132130 if not root :
133131 return
134132 if level == 1 :
@@ -140,9 +138,7 @@ def populate_output(root: Node | None, level: int) -> Generator[int, None, None]
140138 yield from populate_output (root , level )
141139
142140
143- def get_nodes_from_right_to_left (
144- root : Node | None , level : int
145- ) -> Generator [int , None , None ]:
141+ def get_nodes_from_right_to_left (root : Node | None , level : int ) -> Generator [int ]:
146142 """
147143 Returns a list of nodes value from a particular level:
148144 Right to left direction of the binary tree.
@@ -152,7 +148,7 @@ def get_nodes_from_right_to_left(
152148 [3, 2]
153149 """
154150
155- def populate_output (root : Node | None , level : int ) -> Generator [int , None , None ]:
151+ def populate_output (root : Node | None , level : int ) -> Generator [int ]:
156152 if not root :
157153 return
158154 if level == 1 :
@@ -164,7 +160,7 @@ def populate_output(root: Node | None, level: int) -> Generator[int, None, None]
164160 yield from populate_output (root , level )
165161
166162
167- def zigzag (root : Node | None ) -> Generator [int , None , None ]:
163+ def zigzag (root : Node | None ) -> Generator [int ]:
168164 """
169165 ZigZag traverse:
170166 Returns a list of nodes value from left to right and right to left, alternatively.
0 commit comments