← BACK TO KNOWLEDGE
KNOWLEDGE
Binary Tree Inorder: Iterative Stack Simulation
— views— comments
Simulating recursion depth-first with an explicit stack to perform Left-Root-Right tree traversals.
INTERACTIVE ALGORITHM WORKBENCH
Binary Tree Inorder Traversal Visualizer
EasyTree & DFS TraversalTime O(n)Space O(h)
Binary Tree Topology
Traversal State
Inorder Visited Output:
[ ]
DFS Call Stack:
Stack empty
Current NodeNode 4
Stack Depth0
Visited Count0
Traversal PhaseStarting
1def inorder_traversal(root):▶2 res, stack, curr = [], [], root3 while curr or stack:4 while curr:5 stack.append(curr)6 curr = curr.left7 curr = stack.pop()8 res.append(curr.val)9 curr = curr.right10 return resWHY THIS STEP WORKS
Inorder traversal visits Left Subtree -> Node -> Right Subtree. We use a LIFO stack to remember parent nodes while diving deep into left branches.
- 1Initialize stack = []
- 2Initialize visited = []
- 3Set curr = root
Comments