题目描写叙述:

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

解题思路:

这道题考查二叉树的层次遍历。

对于二叉树的先序遍历、中序遍历、兴许遍历。我们都比較熟悉,用递归方法实现,代码也很easy。

对于层次遍历,我们在实现的时候,须要借助一个队列来辅助。

依次将层次遍历的到的节点压入队列。再从队列中依次取出来打印。

实现代码:

/*
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> result;if(root == nullptr)return result;queue<TreeNode *> queueNode;queueNode.push(root);while(queueNode.size()){TreeNode *tNode = queueNode.front();queueNode.pop();result.push_back(tNode->val);if(tNode->left != nullptr)queueNode.push(tNode->left);if(tNode->right != nullptr)queueNode.push(tNode->right);}return result;}
};

转载于:https://www.cnblogs.com/gccbuaa/p/7383840.html

面试题23_从上往下打印二叉树相关推荐

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

    题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印. /* struct TreeNode {int val;struct TreeNode *left;struct TreeNode * ...

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

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

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

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

  4. 剑指offer:面试题32 - III. 从上到下打印二叉树 III

    题目: 从上到下打印二叉树 III 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推. 例如: 给定 ...

  5. 剑指offer:面试题32 - II. 从上到下打印二叉树 II

    题目:从上到下打印二叉树 II 从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行. 例如: 给定二叉树: [3,9,20,null,null,15,7], 3    / \ ...

  6. 剑指offer:面试题32 - I. 从上到下打印二叉树

    题目:从上到下打印二叉树 从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印. 例如: 给定二叉树: [3,9,20,null,null,15,7], 3/ \9 20/ \15 7 ...

  7. 【剑指offer】面试题32:从上到下打印二叉树(java)

    从上往下打印二叉树的每个节点,同一层的节点按照从左到右的顺序打印.例如输入下图的二叉树,则一次打印出8,6,10,5,7,9,11. 思路:利用队列,将左右子树加入队列末尾,取出结点 代码: pack ...

  8. 剑指offer编程试题Java实现--22.从上往下打印二叉树

    个人博客:小景哥哥 22.从上往下打印二叉树 题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印. import java.util.ArrayList; import java.util ...

  9. 从上到下打印二叉树 II

    从上到下打印二叉树 II 从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行. 例如: 给定二叉树: [3,9,20,null,null,15,7], 3/ \9 20/ \1 ...

最新文章

  1. 谷歌浏览器异步请求后台session变了_session打爆面试官
  2. Oracle-等待事件解读
  3. 【机器学习算法专题(蓄力计划)】十五、机器学习中玄乎的最大熵原理及模型
  4. 转载: 快速理解Docker - 容器级虚拟化解决方案
  5. 盛骁杰:对于充满好奇心的技术人来说多媒体技术是个宝藏
  6. RxPermissions 源码解析之举一反三
  7. 不足补0 java_Java Android 开发数字不足位数前面补0
  8. 狂人日记学习 之一 CSS布局的目的
  9. python加法例子_第二讲 做加法的例子
  10. springMvc 乱码问题
  11. 计算机法宝,计算机专业英语学习法宝.doc
  12. 【渝粤题库】广东开放大学 商务网站建设与维护 形成性考核
  13. RescuePRO Deluxe(闪迪数据恢复) v6.0.3.1中文破解版
  14. codelite 设置
  15. 消费升级背景下零食行业发展报告_趋势 | 保健食品 “零食化”升级
  16. 转载别人的博客时图片不出来的解决办法
  17. DXF04-02 时间:2021.12.03-2012.12.03 关键词:DXF样条曲线信息
  18. 计算机logo在线设计,手机上在线制作免费logo图标的APP—Logo Foundry
  19. android有用的命令
  20. Android实习周记:第一周,井底之蛙上岸

热门文章

  1. vant UI库组件, 与HTML 标签冲突
  2. 如何通过网站SEO诊断来做竞争对手的分析?
  3. 浅析充分挖掘网站外链发挥SEO优化作用的4点技巧!
  4. 易语言录入数据到access里重复提示_一招搞定:excel数据共享协同
  5. curl wget之间的区别 以及推荐SimpRead插件
  6. 开发日记-20190914 关键词 汇编语言王爽版 第四章
  7. 开发日记-20190603 关键词 读书笔记《鸟哥的Linux私房菜-基础学习篇》
  8. typescript 入门例子 Hello world——ts就是一个宿主机语言
  9. Scrum介绍——续
  10. pyhton3 rsa长加密/解密