首页 > 代码库 > 637. Average of Levels in Binary Tree 二叉树每一层的平均值
637. Average of Levels in Binary Tree 二叉树每一层的平均值
Given a non-empty binary tree, return the average value of the nodes on each level in the form of an array.
Example 1:
Input: 3 / 9 20 / 15 7 Output: [3, 14.5, 11] Explanation: The average value of nodes on level 0 is 3, on level 1 is 14.5, and on level 2 is 11. Hence return [3, 14.5, 11].
Note:
- The range of node‘s value is in the range of 32-bit signed integer
# Definition for a binary tree node.
# class TreeNode(object):
# def __init__(self, x):
# self.val = x
# self.left = None
# self.right = None
class Solution(object):
def averageOfLevels(self, root):
"""
:type root: TreeNode
:rtype: List[float]
"""
if(not root):
return 0
result = []
queue = [root]
while(queue):
count = len(queue)
sum = 0
for i in range(0, count):
node = queue.pop(0)
sum += node.val
if(node.left):
queue.append(node.left)
if(node.right):
queue.append(node.right)
result.append(sum * 1.0 / count)
return result
来自为知笔记(Wiz)
637. Average of Levels in Binary Tree 二叉树每一层的平均值
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。