LeetCode 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:
<b>Input:</b>
    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.
 * struct TreeNode {
 *     int val;
 *     TreeNode *left;
 *     TreeNode *right;
 *     TreeNode(int x) : val(x), left(NULL), right(NULL) {}
 * };
 */
class Solution {
public:
   vector<double> averageOfLevels(TreeNode* root) {
          vector<double> res;
          double sum=0,cnt=0;
          queue<TreeNode*> q;
          q.push(root);
          TreeNode* last=root;
          TreeNode* tail;
          while(!q.empty()){
               TreeNode* t=q.front();
               q.pop();
               sum+=t->val;
               cnt++;
               if(t->left!=NULL){
                   q.push(t->left);
                   tail=t->left;
               }
               if(t->right!=NULL){
                   q.push(t->right);
                   tail=t->right;
               }
               if(t==last){
                  last=tail;
                  res.push_back(sum/cnt);
                  sum=cnt=0;
               }
          }
        return res;
    }
};
LeetCode 637. Average of Levels in Binary Tree(层序遍历)的更多相关文章
- [LeetCode] 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 ... 
- LeetCode 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 ... 
- LeetCode 637. Average of Levels in Binary Tree二叉树的层平均值 (C++)
		题目: Given a non-empty binary tree, return the average value of the nodes on each level in the form o ... 
- LeetCode - 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 ... 
- 637. Average of Levels in Binary Tree - LeetCode
		Question 637. Average of Levels in Binary Tree Solution 思路:定义一个map,层数作为key,value保存每层的元素个数和所有元素的和,遍历这 ... 
- 【Leetcode_easy】637. Average of Levels in Binary Tree
		problem 637. Average of Levels in Binary Tree 参考 1. Leetcode_easy_637. Average of Levels in Binary T ... 
- 【LeetCode】637. Average of Levels in Binary Tree 解题报告(Python)
		作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 方法一:DFS 方法二:BFS 日期 题目地址:ht ... 
- [LeetCode&Python] Problem 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 ... 
- 【leetcode】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 ... 
随机推荐
- Java微信公众平台开发(八)--多媒体消息回复之音乐
			我们上一篇写了关注出发图片的回复.想着在发送一次音乐,最后基于回复消息分类情况下,实现一个简单的只能话回复.先附一张大致效果图. 下面我们进入代码阶段. (一)修改消息转发器MsgDispatcher ... 
- JSP文件上传,好烦啊、、
			<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ... 
- 分布式系统ID生成办法
			前言 一般单机或者单数据库的项目可能规模比较小,适应的场景也比较有限,平台的访问量和业务量都较小,业务ID的生成方式比较原始但是够用,它并没有给这样的系统带来问题和瓶颈,所以这种情况下我们并没有对此给 ... 
- 微信公众号与HTML 5混合模式揭秘5——JSSDK开发技巧1
			微信公众号与HTML 5混合模式揭秘1——如何部署JSSDK 微信公众号与HTML 5混合模式揭秘2——分享手机相册中照片 微信公众号与HTML 5混合模式揭秘3——JSSDK获取地理位置 微信公众号 ... 
- 降低PNG图片存储大小方法、图片压缩方法
			降低PNG图片存储大小方法,图片压缩方法,如何降低PNG图片存储大小?前提是分辨率和尺寸大小不变,图形的透明部分不变.请看如下办法,亲测可用. 1. 将PNG图片用PS打开. 2. 图像-模式-8位/ ... 
- ScrollView中嵌套ListView时,listview高度显示的问题
			方法一:直接更改listview的控件高度,动态获取(根据条目和每个条目的高度获取) 前几天因为项目的需要,要在一个ListView中放入另一个ListView,也即在一个ListView的每个Lis ... 
- cacti添加被监控机全过程
			在被监控端上的操作: 1.在被监控机器上root目录下建立文件 test.sh chmod 777 test.sh cat test #!/bin/bash echo $RANDOM 2.在snmpd ... 
- OPENFIRE 启动流程
			在java>org>jivesoftware>openfire>starter,该类中的main方法启动,有图为证: 在start中方法分别调用unpackArchives和f ... 
- win7 x64和win10 x64  windbg 本地调试记录
			今天看CSDN和某文档看了win7 64位 和win10 64位 的windbg本地调试内核的办法 win7 x64 Step1:kdbgctrl –db Step2:kdbgctrl –e Step ... 
- ipsec配置strongswan.conf和ipsec.conf
			配置strongswan.conf vi /usr/local/etc/strongswan.conf # strongswan.conf - strongSwan configuration fil ... 
