剑指offer之从上到下打印二叉树

从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。
例如:
给定二叉树: [3,9,20,null,null,15,7],
在这里插入图片描述

返回:
[3,9,20,15,7]

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/cong-shang-dao-xia-da-yin-er-cha-shu-lcof
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解题思路:
这道题明显是二叉树的层序遍历。首先定义一个队列,将二叉树的根节点入队,当队列非空,访问队首元素,然后判断其左右孩子是否为空,不为空的话,入队。
代码:

/*** 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<int> levelOrder(TreeNode* root) {if(root == NULL) return {};vector<int> ans;queue<TreeNode*> q;q.push(root);while(!q.empty()){TreeNode* temp = q.front();ans.push_back(temp->val);q.pop();if(temp->left != NULL) q.push(temp->left);if(temp->right != NULL) q.push(temp->right);}return ans;}
};

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/443645.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小米真蓝牙耳机说明书_小米真无线蓝牙耳机Air2 SE评测:仅需169元,享受随心畅听体验...

继小米真无线蓝牙耳机Air 2、小米真无线蓝牙耳机Air 2S之后&#xff0c;小米公司又于2020年5月19日再次推出了一款售价更为亲民的真无线蓝牙耳机新品——小米真无线蓝牙耳机Air2 SE&#xff0c;该机不仅延续了小米真无线蓝牙耳机Air 2系列的外观设计&#xff0c;支持开盒弹窗、…

三点外接圆_故地重游伪切圆——伪外接圆的基本性质

在思考一个有关于伪外接圆的等角线问题时&#xff0c;我回想起伪外接圆的一道小题目&#xff0c;这是2012年罗马尼亚大师杯的第六题&#xff0c;这道题目直接以结论的形式呈现出了伪外接圆的基本性质&#xff0c;是一道入门伪外接圆必做的精巧小题。当然有些读者可能从未见过&q…

一点等于多少厘米_马桶知识介绍,你了解马桶多少

我们可能并不了解我们经常运用的马桶&#xff0c;认为马桶便是简简单单的规划&#xff0c;没什么技术含量。其实不然&#xff0c;马桶的规划也包含了不少物理学原理。假如你家里的马桶出现毛病&#xff0c;首先要排查毛病的原因&#xff0c;但是假如不了解马桶结构图那就很难把…

1151压力变送器型号_日本进口横河EJA530E压力变送器型号解读!

横河EJA变送器对大家来说也许不陌生&#xff0c;但是对于EJA变送器的型号很多人还不是很懂&#xff0c;因为一个全型号代表这很多参数&#xff0c;每一个字母和每一个数字背后都是一个准确的参数&#xff0c;我们在选型的时候要提供必要的参数&#xff0c;更具参数选出合适的型…

怎样在数组末尾添加数据_如何利用C++实现可变长的数组?

应该执行什么功能&#xff1f;假设我们要实现一个将自动扩展的数组类&#xff0c;是否需要实现函数&#xff1f;让我们从下面主要功能使用的功能开始&#xff0c;看看我们需要实现哪些功能。输出结果&#xff1a;0 1 2 3 40 1 2 100 4您需要做什么才能实现上述功能&#xff1f;…

覆盖索引与联合索引_浅析MySQL的索引覆盖和索引下推

写在前面在MySQL数据库中&#xff0c;索引对查询的速度有着至关重要的影响&#xff0c;理解索引也是进行数据库性能调优的起点&#xff0c;索引就是为了提高数据查询的效率。今天我们来聊聊在MySQL索引优化中两种常见的方式&#xff0c;索引覆盖和索引下推索引覆盖要了解索引覆…

循环斐波那契数列_第五课:斐波那契数列(第一课时)

简介&#xff1a;又称黄金分割数列、因数学家列昂纳多斐波那契以兔子繁殖为例子而引入&#xff0c;故又称为“兔子数列”&#xff0c;指的是这样一个数列&#xff1a;1、1、2、3、5、8、13、21、34……在数学上&#xff0c;斐波那契数列以如下被以递推的方法定义&#xff1a;F(…

命令行 蓝牙_Ubuntu使用BlueZ驱动蓝牙dongle

蓝牙dongle即蓝牙适配器&#xff0c;一般为USB接口&#xff0c;通过USB连接到PC等设备。连接dongle后&#xff0c;PC即可使用驱动程序控制dongle连接其它蓝牙设备。本文主要介绍在Ubuntu系统中安装BlueZ的方法及蓝牙的使用。01获取BlueZBlueZ是Linux系统的官方蓝牙协议栈&#…

Java在Windows下导出xml文件到Linux服务器上

最近由于公司项目需要&#xff0c;学习了在Windows平台导出xml文件到Linux服务器上的指定目录下的方法&#xff0c;&#xff08;注&#xff1a;这里的我的Linux是在本机上装的虚拟机&#xff09;现在写下来记录一下&#xff01; 1.首先是项目截图&#xff1a; 2.主要是类&…

java peek函数_Java 8 Stream Api 中的 peek 操作

1. 前言我在 Java 8 Stream API中的 map 和flatMap 中讲述了Java8 Stream API中 map 操作和 flatMap 操作的区别。然后有小伙伴告诉我 peek 操作 也能实现元素的处理。但是你知道 map 和 peek 的区别吗&#xff1f; map 我们在开头文章已经讲过了&#xff0c;你可以去详细了解一…

iphone如何查看dns延迟_iPhone手机网速慢?1分钟教你设置DNS,网速立马翻一番

很多小伙伴在购机时选择苹果手机都是因为iOS系统的流畅度和精简性&#xff0c;但iPhone在可玩性和信号方面是不如安卓手机的。大家在使用过程中一定遇到过这样的情况&#xff0c;连接同一个无线网&#xff0c;但是苹果的网速总是要比安卓慢&#xff0c;这该怎么办呢&#xff1f…

copying mysql status_mysql慢查询copying to tmp table

windows server&#xff0c;无论修改my.ini的tmp_table_size&#xff0c;max_heap_table_size到多少&#xff0c;情况都一样。同样的表和查询语句&#xff0c;在本地运行&#xff0c;没出现慢查询。SELECTg.goods_id,g.goods_name,g.shop_price,g.goods_thumb,SUM(og.goods_num…

JDK 7,jdk1.7 安装及配置

1.打开网页&#xff1a;http://www.oracle.com 下载对应平台的合适JDK。 2. 双击下载的exe,如jdk-7u7-windows-i586.exe。 3.进入安装向导&#xff1a; 4.下一步&#xff0c;更改安装路径&#xff0c;选择安装所有组件。 更改为D:\jdk1.7.0_07\ 点击确定 5.下一步&#xff0c;…

c mysql 编译_MySQL编译安装之cmake

mysql版本5.5以上编译安装时需要用到软件cmake&#xff0c;cmake特性是独立于源码编译&#xff0c;编译工作可以在另外一个目录中而非源码目录中进行&#xff0c;mysql版本5.5以上编译安装时需要用到软件cmake&#xff0c;cmake特性是独立于源码编译&#xff0c;编译工作可以在…

vb连接mysql未发现_vb连接MySQL遇到的问题解决方法

1.安装mysql,2.安装MyODBC-standard-3.51.07-win.msi3:vb连接语句是:Public strcnn As StringPublic sql As StringPublic conn A1.安装mysql,2.安装MyODBC-standard-3.51.07-win.msi3:vb连接语句是:Public strcnn As StringPublic sql As StringPublic conn As New ADODB.Conn…

mysql里面有没有map类型_MySQL学习(二) 数据类型

MySQL支持多种列类型&#xff1a;数值类型、日期/时间类型和字符串(字符)类型。数值类型数值类型又分为整数型与小数型整数型下面的表显示了需要的每个整数类型的存储和范围创建一张表mysql> CREATE TABLE t_int (int_1 TINYINT,int_2 SMALLINT,int_3 MEDIUMINT,int_4 INT,i…

shell执行perl_【编程技巧(一)】在Perl、Shell和Python中传参与输出帮助文档

社会你明哥&#xff0c;人狠话又多&#xff01;【小明的碎碎念】与你不见不散&#xff01;作为一名搞数据的生物狗&#xff0c;咱们是生物狗中代码写得最六的&#xff0c;程序员中生物学得最好的——大家没意见吧&#xff0c;有意见请憋着跟随小明的步伐&#xff0c;让我们开开…

python之路2.0_Python之路【第二十一篇】:JS基础

1.2 ECMAScript尽管 ECMAScript 是一个重要的标准&#xff0c;但它并不是 JavaScript 唯一的部分&#xff0c;当然&#xff0c;也不是唯一被标准化的部分。实际上&#xff0c;一个完整的 JavaScript 实现是由以下 3 个不同部分组成的&#xff1a;● 核心(ECMAScript)● 文档对象…

solr4 mysql自动更新_(solr系列:五) solr定时实时重建索引和增量更新

将mysql中的数据导入到了solr中之后&#xff0c;如果数据库中的数据有变动&#xff0c;solr中还是第一次导入的旧的数据&#xff0c;那该如何是好呢&#xff1f;该如何实现mysql数据库中的数据定时同步到solr中呢&#xff1f;下面将做详细的介绍。准备工作要做好&#xff1a;1、…

mysql pydev_pydev-python 链接mysql数据库(mac系统)

在mac os上安装MySQLdb&#xff0c;遇到了非常多问题&#xff0c;总结一下&#xff1a;首先。假设用sudo easy_install mysql-python命令安装&#xff0c;基本上不会成功的&#xff0c;原因有两个&#xff1a;一是找不到mysql_config位置&#xff0c;二是如今基本上安装的是64位…