LeetCode 솔루션 분류
[7/13] 102. Binary Tree Level Order Traversal
본문
Medium
9071175Add to ListShareGiven the root
of a binary tree, return the level order traversal of its nodes' values. (i.e., from left to right, level by level).
Example 1:
Input: root = [3,9,20,null,null,15,7] Output: [[3],[9,20],[15,7]]
Example 2:
Input: root = [1] Output: [[1]]
Example 3:
Input: root = [] Output: []
Constraints:
- The number of nodes in the tree is in the range
[0, 2000]
. -1000 <= Node.val <= 1000
Accepted
1,337,731
Submissions
2,168,069
관련자료
-
링크
댓글 1
학부유학생님의 댓글
- 익명
- 작성일
Runtime: 56 ms, faster than 44.73% of Python3 online submissions for Binary Tree Level Order Traversal.
Memory Usage: 14.2 MB, less than 84.23% of Python3 online submissions for Binary Tree Level Order Traversal.
Memory Usage: 14.2 MB, less than 84.23% of Python3 online submissions for Binary Tree Level Order Traversal.
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
import collections
class Solution:
def levelOrder(self, root: Optional[TreeNode]) -> List[List[int]]:
deque = collections.deque([])
if root: deque.append(root)
res = []
while deque:
nodes_in_level = []
for i in range(len(deque)):
node = deque.popleft()
nodes_in_level.append(node.val)
if node.left: deque.append(node.left)
if node.right: deque.append(node.right)
res.append(nodes_in_level)
return res