File tree Expand file tree Collapse file tree 1 file changed +36
-0
lines changed
leetcode.com 637. Average of Levels in Binary Tree Expand file tree Collapse file tree 1 file changed +36
-0
lines changed Original file line number Diff line number Diff line change
1
+ from typing import Optional , List
2
+
3
+ # Definition for a binary tree node.
4
+ class TreeNode :
5
+ def __init__ (self , val = 0 , left = None , right = None ):
6
+ self .val = val
7
+ self .left = left
8
+ self .right = right
9
+
10
+ class Solution :
11
+ def averageOfLevels (self , root : Optional [TreeNode ]) -> List [float ]:
12
+ queue = [TreeNode (- 1 , root , None )]
13
+ answer = []
14
+ queue2 = []
15
+
16
+ while queue :
17
+ node = queue .pop (0 )
18
+ if node .left :
19
+ queue2 .append (node .left )
20
+ if node .right :
21
+ queue2 .append (node .right )
22
+
23
+ if len (queue ) == 0 :
24
+ mysum = 0
25
+ count = len (queue2 )
26
+ if count == 0 :
27
+ break
28
+
29
+ for node in queue2 :
30
+ mysum += node .val
31
+
32
+ answer .append (mysum / count )
33
+ queue = queue2
34
+ queue2 = []
35
+
36
+ return answer
You can’t perform that action at this time.
0 commit comments