【python-leetcode637-树的宽度遍历】二叉树的层平均值
发布日期:2021-05-09 08:30:43 浏览次数:13 分类:博客文章

本文共 802 字,大约阅读时间需要 2 分钟。

给定一个非空二叉树, 返回一个由每层节点平均值组成的数组.

示例 1:

输入:

3
/ \
9 20
    / \
  15 7
输出: [3, 14.5, 11]
解释:
第0层的平均值是 3, 第1层是 14.5, 第2层是 11. 因此返回 [3, 14.5, 11].
注意:

节点值的范围在32位有符号整数范围内。

 

# Definition for a binary tree node.# class TreeNode:#     def __init__(self, x):#         self.val = x#         self.left = None#         self.right = Noneclass Solution:    def averageOfLevels(self, root: TreeNode) -> List[float]:        if  not root:            return []        queue=[root]        res=[]        while queue:            s=0            l=len(queue)            for i in range(l):                t=queue.pop(0)                s+=t.val                if t.left:                    queue.append(t.left)                if t.right:                    queue.append(t.right)            res.append(float(s)/float(l))        return res

 

上一篇:【python-leetcode111-树的宽度遍历】二叉树的最小深度
下一篇:hadoop伪分布式之配置yarn并运行MR程序(WordCount)

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2025年04月05日 10时54分12秒