>>> root = TreeNode(1) >>> tree_node2 = TreeNode(2) >>> tree_node3 = TreeNode(3) >>> tree_node4 = TreeNode(4) >>> tree_node5 = TreeNode(5) >>> tree_node6 = TreeNode(6) >>> tree_node7 = TreeNode(7) >>> root.left, root.right = tree_node2, tree_node3 >>> tree_node2.
(node: TreeNode)
| 200 | |
| 201 | |
| 202 | def in_order_iter(node: TreeNode) -> None: |
| 203 | """ |
| 204 | >>> root = TreeNode(1) |
| 205 | >>> tree_node2 = TreeNode(2) |
| 206 | >>> tree_node3 = TreeNode(3) |
| 207 | >>> tree_node4 = TreeNode(4) |
| 208 | >>> tree_node5 = TreeNode(5) |
| 209 | >>> tree_node6 = TreeNode(6) |
| 210 | >>> tree_node7 = TreeNode(7) |
| 211 | >>> root.left, root.right = tree_node2, tree_node3 |
| 212 | >>> tree_node2.left, tree_node2.right = tree_node4 , tree_node5 |
| 213 | >>> tree_node3.left, tree_node3.right = tree_node6 , tree_node7 |
| 214 | >>> in_order_iter(root) |
| 215 | 4,2,5,1,6,3,7, |
| 216 | """ |
| 217 | if not isinstance(node, TreeNode) or not node: |
| 218 | return |
| 219 | stack: list[TreeNode] = [] |
| 220 | n = node |
| 221 | while n or stack: |
| 222 | while n: |
| 223 | stack.append(n) |
| 224 | n = n.left |
| 225 | n = stack.pop() |
| 226 | print(n.data, end=",") |
| 227 | n = n.right |
| 228 | |
| 229 | |
| 230 | def post_order_iter(node: TreeNode) -> None: |
no test coverage detected