Step 1: Start with root node 1 in queue
Queue: [1]
Output: []
Why: We begin traversal from the root node
Step 2: Remove 1 from queue, add its value to output, enqueue its children 2 and 3
Queue: [2, 3]
Output: [1]
Why: Visit root, then prepare to visit its children next
Step 3: Remove 2 from queue, add its value to output, enqueue its children 4 and 5
Queue: [3, 4, 5]
Output: [1, 2]
Why: Visit next node on level 2, then enqueue its children
Step 4: Remove 3 from queue, add its value to output, enqueue its child 6
Queue: [4, 5, 6]
Output: [1, 2, 3]
Why: Visit next node on level 2, enqueue its child
Step 5: Remove 4 from queue, add its value to output, no children to enqueue
Queue: [5, 6]
Output: [1, 2, 3, 4]
Why: Visit next node on level 3, no children to add
Step 6: Remove 5 from queue, add its value to output, no children to enqueue
Queue: [6]
Output: [1, 2, 3, 4, 5]
Why: Visit next node on level 3, no children to add
Step 7: Remove 6 from queue, add its value to output, no children to enqueue
Queue: []
Output: [1, 2, 3, 4, 5, 6]
Why: Visit last node, traversal complete
Result: Output: 1 -> 2 -> 3 -> 4 -> 5 -> 6 -> null