Binary Tree Level Order Traversal
- 1 min read
- LC-Medium
- Binary Tree
Solution
- Breadth-first Search. That's it.
| Time | Space | Explanation |
|---|
O(n) | O(h) | |
def levelOrder(self, root: Optional[TreeNode]) -> List[List[int]]:
if root is None:
return []
q = deque([root])
ans = []
while q:
level = []
for _ in range(len(q)):
node = q.popleft()
level.append(node.val)
if node.left:
q.append(node.left)
if node.right:
q.append(node.right)
ans.append(level)
return ans