Skip to content

Commit 05a17dc

Browse files
committed
solve 2
1 parent c76f290 commit 05a17dc

File tree

1 file changed

+36
-0
lines changed
  • binary-tree-level-order-traversal

1 file changed

+36
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
'''
2+
시간 복잡도: O(n)
3+
공간 복잡도: O(n)
4+
'''
5+
6+
from collections import deque
7+
from typing import List, Optional
8+
9+
class TreeNode:
10+
def __init__(self, val=0, left=None, right=None):
11+
self.val = val
12+
self.left = left
13+
self.right = right
14+
15+
class Solution:
16+
def levelOrder(self, root: Optional[TreeNode]) -> List[List[int]]:
17+
queue = deque([root]) if root else []
18+
result = []
19+
20+
while queue:
21+
same_level_nodes = []
22+
23+
for _ in range(len(queue)):
24+
node = queue.popleft()
25+
same_level_nodes.append(node.val)
26+
27+
if node.left:
28+
queue.append(node.left)
29+
if node.right:
30+
queue.append(node.right)
31+
32+
result.append(same_level_nodes)
33+
34+
return result
35+
36+

0 commit comments

Comments
 (0)