题目描述

从上往下打印出二叉树的每个节点,同层节点从左至右打印。

/*
struct TreeNode {int val;struct TreeNode *left;struct TreeNode *right;TreeNode(int x) :val(x), left(NULL), right(NULL) {}
};*/
class Solution {
public:vector<int> PrintFromTopToBottom(TreeNode* root) {vector<int> res;  if(root==NULL)return res;deque<TreeNode*> dequeTreeNode;dequeTreeNode.push_back(root);while(dequeTreeNode.size())        //循环终止条件:队列元素全部打印为空{TreeNode* pNode= dequeTreeNode.front();   //返回双端队列dequeTreeNode的首元素给pNodedequeTreeNode.pop_front();             //删除双端队列dequeTreeNode的首元素res.push_back(pNode->val);        //将此时的dequeTreeNode第一个元素存入到输出容器res中if(pNode->left)               //若当前结点的左结点不为空,将其左结点存入到双端队列dequeTreeNode中dequeTreeNode.push_back(pNode->left);if(pNode->right)dequeTreeNode.push_back(pNode->right);   若当前结点的右结点不为空,将其右结点存入到双端队列dequeTreeNode中}return res;}
};

剑指offer面试题[23]-从上往下打印二叉树(按层序打印)相关推荐

  1. 剑指offer——面试题23:从上往下打印二叉树

    剑指offer--面试题23:从上往下打印二叉树 Solution1: 典型的BFS算法! 思路一开始没想到,按照书上的思路写的答案... 注意:deque是双向队列,在头尾插入都很快! /* str ...

  2. [剑指offer]面试题23:从上往下打印二叉树

    面试题23:从上往下打印二叉树 题目:从上往下打印出二叉树的每个结点,同一层的结点按照从左到右的顺序打印.例如输入图4.5中的二叉树,则依次打印出8.6.10.5.7.9.11. 二叉树结点的定义如下 ...

  3. 剑指offer面试题23:从上到下打印二叉树(树的层序遍历)

    题目:从上往下打印出二叉树的每个节点,同一层的结点按照从左往右的顺序打印. 解题思路:二叉树的层序遍历,在打印一个节点的时候,要把他的子节点保存起来打印第一层要把第二层的节点保存起来, 打印第二层要把 ...

  4. 【剑指offer-Java版】23从上往下打印二叉树

    从上往下打印二叉树:如果把这个书看做是一个特殊的图,那么该打印过程就类似于一个广度优先遍历 public class _Q23 {public <T> void PrintTreeFrom ...

  5. 剑指offer(21)从上往下打印二叉树

    public class Solution {public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {//创建俩个数列 ...

  6. 剑指offer 面试题三 找出数组中重复的数字

    1 import org.junit.Test; 2 3 import java.util.Arrays; 4 import java.util.HashSet; 5 6 public class D ...

  7. 两个数组中对应的下标的值合成一个新的数组_剑指 offer 面试题精选图解 03 . 数组中重复的数字

    今天分享的题目来源于 LeetCode 上的剑指 Offer 系列 面试题03. 数组中重复的数字. 题目链接:https://leetcode-cn.com/problems/shu-zu-zhon ...

  8. 剑指offer面试题[30]-最小的k个数

    题目描述 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4. 分析思路:         这道题最简单的思路莫过于把输入的n个数排 ...

  9. (待补充)【n个骰子的点数】剑指offer——面试题43:n个骰子的点数

    剑指offer--面试题43:n个骰子的点数 [注意]此题再牛客网上没有OnlineJudge,在此补充解法. 题目:把n个骰子扔在地上,所有骰子朝上一面的点数之和为s.输入n,打印出s的所有可能的值 ...

最新文章

  1. web.config配置
  2. 清华大学史作强副教授专访:用流形、偏微分方程揭秘人工智能
  3. Andrew Gelman、Aki Vehtari​ | 过去50年最重要的统计学思想是什么?
  4. GAN还有这种操作!谷歌大脑和X实验室利用模拟条件和域适应提高机器抓取效率(附论文)
  5. xcode编译项目Permission denied错误
  6. 疾风之刃鸿蒙炸裂,疾风之刃二周年版本12月1日上线_疾风之刃天武僧二觉率先开放_游戏堡...
  7. 我为什么重新开始学习数学?
  8. 边缘使用 K8s 门槛太高?OpenYurt 这个功能帮你快速搭建集群!
  9. linux服务器不能访问,无法在远程Linux服务器上访问tomcat
  10. 通过getSystemServices获取手机管理大全
  11. vba 当前文件名_VBA代码解决方案第77讲内容:如何导出文件
  12. 云栖大会 | 释放计算弹性,阿里云做了很多
  13. 计算机与机械制图课题研究,考核机械制图论文,关于“机械制图CAD”课程考试改革相关参考文献资料-免费论文范文...
  14. oracle数据库 date函数,Oracle 函数(处置Date)
  15. D轮融资7.5亿美元,十荟团能否比拼估值80亿美元的兴盛优选
  16. java汽车工厂类方法_Java设计模式学习之工厂模式
  17. 计算机音乐修炼爱情,林俊杰/于竞超/苏阳/陈蓝杰《修炼爱情 (Live)》[FLAC/MP3-320K]...
  18. 用HTML编写携程旅行,StaticHtmlPage(仿照携程写的静态网页)
  19. 用pdfminer把PDF文件转化为文本文件
  20. 2022年煤矿探放水题库及模拟考试

热门文章

  1. linux硬盘类型怎么选,如何选择linux系统安装类型
  2. Python+OpenCV:图像二进制鲁棒独立基本特征(BRIEF, Binary Robust Independent Elementary Features)
  3. C++杜绝“野指针”
  4. 视觉平台搭建——光源选择
  5. 空循环和无穷循环的区别
  6. 125万像素智能相机收费站解决方案
  7. linux桌面环境与窗口管理器,窗口管理器和桌面环境的区别 | MOS86
  8. android ble 发送指令,Android – 如何通过蓝牙低能耗(BLE)链接发送数据?
  9. 03python面向对象编程5
  10. HttpServletResponse类