力扣——二叉树的层平均值
Posted jaypark
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了力扣——二叉树的层平均值相关的知识,希望对你有一定的参考价值。
给定一个非空二叉树, 返回一个由每层节点平均值组成的数组.
示例 1:
输入:
3
/ \
9 20
/ \
15 7
输出: [3, 14.5, 11]
解释:
第0层的平均值是 3, 第1层是 14.5, 第2层是 11. 因此返回 [3, 14.5, 11].
注意:
节点值的范围在32位有符号整数范围内。
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/average-of-levels-in-binary-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
/** * Definition for a binary tree node. * public class TreeNode * int val; * TreeNode left; * TreeNode right; * TreeNode(int x) val = x; * */ class Solution public List<Double> averageOfLevels(TreeNode root) List<Double> doubles = new ArrayList<>(); if (root == null) return doubles; Queue<TreeNode> queue = new LinkedList<>(); queue.add(root); while (!queue.isEmpty()) int size = queue.size(); double ave = 0; for (int i = 0; i < size; i++) TreeNode node = queue.poll(); if (node.left != null) queue.add(node.left); if (node.right != null) queue.add(node.right); ave += node.val; ave = ave * 1.0d / size; doubles.add(ave); return doubles;
以上是关于力扣——二叉树的层平均值的主要内容,如果未能解决你的问题,请参考以下文章