File tree Expand file tree Collapse file tree 1 file changed +36
-0
lines changed
binary-tree-level-order-traversal Expand file tree Collapse file tree 1 file changed +36
-0
lines changed Original file line number Diff line number Diff line change
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
+
You can’t perform that action at this time.
0 commit comments