Concept Flow - Maximum Width of Binary Tree
Start at root node
Initialize queue with root and index 0
While queue not empty
For each level: get first and last node indices
Calculate width = last_index - first_index + 1
Update max width if current width is larger
Add children to queue with updated indices
Repeat for next level
Return max width found
We start from the root, use a queue to track nodes level by level with indices, calculate width per level, update max width, and continue until all levels are processed.