每日一题20201124*(637. 二叉树的层平均值)

简介: 二叉树的层平均值

637. 二叉树的层平均值

27.jpg

image.png

思路



继续采用广度优先遍历的方式,只需要稍微调整一下代码即可。可以参考:

每日一题20201204(102. 二叉树的层序遍历)


# Definition for a binary tree node.
# class TreeNode:
#     def __init__(self, x):
#         self.val = x
#         self.left = None
#         self.right = None
class Solution:
    def averageOfLevels(self, root: TreeNode) -> List[float]:
        if root is None:
            return []
        ans = []
        queue = [root]
        while len(queue) > 0:
            size = len(queue)
            # 记录这一层的总数
            total = 0
            for _ in range(size):
                current = queue.pop(0)
                total += current.val
                if current.left is not None:
                    queue.append(current.left)
                if current.right is not None:
                    queue.append(current.right)
            # ans数组添加进去平均值,不用担心size为0的问题,因为size肯定>0 
            # 因为queue后面的出队和入队已经不影响size了
            ans.append(total / size)
        return ans

28.jpg

image.png




相关文章
|
5天前
|
C++ Python
leetcode-637:二叉树的层平均值
leetcode-637:二叉树的层平均值
19 0
|
5天前
leetcode代码记录(二叉树的最小深度
leetcode代码记录(二叉树的最小深度
9 0
|
6月前
|
算法
代码随想录算法训练营第二十天 | LeetCode 530. 二叉搜索树的最小绝对差、501. 二叉搜索树中的众数、236. 二叉树的最近公共祖先
代码随想录算法训练营第二十天 | LeetCode 530. 二叉搜索树的最小绝对差、501. 二叉搜索树中的众数、236. 二叉树的最近公共祖先
31 0
|
7月前
【Leetcode -637.二叉树的层平均值 -671.二叉树中第二小的节点】
【Leetcode -637.二叉树的层平均值 -671.二叉树中第二小的节点】
30 0
|
9月前
|
算法
算法训练Day21|530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先
算法训练Day21|530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先
|
9月前
|
存储 算法
算法训练Day17|● 104.二叉树的最大深度 559.n叉树的最大深度● 111.二叉树的最小深度● 222.完全二叉树的节点个数
算法训练Day17|● 104.二叉树的最大深度 559.n叉树的最大深度● 111.二叉树的最小深度● 222.完全二叉树的节点个数
|
9月前
|
算法
算法训练Day40|343. 整数拆分 ● 96.不同的二叉搜索树
算法训练Day40|343. 整数拆分 ● 96.不同的二叉搜索树
|
9月前
|
算法
算法训练Day16|● 层序遍历 10 ● 226.翻转二叉树 ● 101.对称二叉树 2
算法训练Day16|● 层序遍历 10 ● 226.翻转二叉树 ● 101.对称二叉树 2
|
11月前
|
机器学习/深度学习 存储 人工智能
代码随想录训练营day21| 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先...
代码随想录训练营day21| 530.二叉搜索树的最小绝对差 501.二叉搜索树中的众数 236. 二叉树的最近公共祖先...