Binary Tree Level Order Traversal
Problem page:https://leetcode.com/problems/binary-tree-level-order-traversal
Solution
class Solution:
def levelOrder(self, root: Optional[TreeNode]) -> List[List[int]]:
if not root:
return []
queue = deque([root])
res = []
while queue:
length = len(queue)
temp = []
for i in range(length):
node = queue.popleft()
temp.append(node.val)
if node.left:
queue.append(node.left)
if node.right:
queue.append(node.right)
res.append(temp)
return res
Complexity
- time: O(n)
- space: O(d)