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].
题目含义:求二叉树中每一层的平均值
1 public List<Double> averageOfLevels(TreeNode root) { 2 List<Double> result = new ArrayList<>(); 3 Queue<TreeNode> stack = new LinkedList<>(); 4 stack.add(root); 5 while (!stack.isEmpty()) 6 { 7 int n = stack.size(); 8 Double sum = 0.0; 9 for (int i=0;i<n;i++) 10 { 11 TreeNode node = stack.poll(); 12 sum += node.val; 13 if (node.left!= null) stack.add(node.left); 14 if (node.right!=null) stack.add(node.right); 15 } 16 result.add(sum/n); 17 } 18 return result; 19 }
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步