1. # Definition for a binary tree node.
    2. # class TreeNode:
    3. # def __init__(self, x):
    4. # self.val = x
    5. # self.left = None
    6. # self.right = None
    7. class Solution:
    8. def levelOrder(self, root: TreeNode) -> List[List[int]]:
    9. if not root: return []
    10. queue = [root]
    11. ans = []
    12. while queue:
    13. tmp_ans = []
    14. for node in queue[:]:
    15. if node.left:
    16. queue.append(node.left)
    17. if node.right:
    18. queue.append(node.right)
    19. tmp_ans.append(queue.pop(0).val)
    20. ans.append(tmp_ans)
    21. return ans