题目描述

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

解决方案:

import java.util.ArrayList;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Queue;
/**
public class TreeNode {int val = 0;TreeNode left = null;TreeNode right = null;public TreeNode(int val) {this.val = val;}}
*/
public class Solution {public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {ArrayList<Integer> list = new ArrayList<Integer>();ArrayList<TreeNode> queue = new ArrayList<>();if(root ==null){return list;}queue.add(root);while (queue.size() != 0) {TreeNode temp = queue.remove(0);if (temp.left != null){queue.add(temp.left);}if (temp.right != null) {queue.add(temp.right);}list.add(temp.val);}return list;}
}

剑指offer 从上往下打印二叉树相关推荐

  1. C#刷剑指Offer | 从上到下打印二叉树

    [C#刷题]| 作者 / Edison Zhou 这是EdisonTalk的第288篇原创内容 我们来用之前学到的数据结构知识来刷<剑指Offer>的一些核心题目(精选了其中30+道题目) ...

  2. 二叉树高度的代码解析_剑指offer 从上到下打印二叉树

    题目描述 从上往下打印出二叉树的每个节点,同层节点从左至右打印. 解析:这实际上就是二叉树的层序遍历.规律如下:每次打印节点,如果该节点有子节点,则将子节点放入队列末尾,然后取出队列头部最早进入队列的 ...

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

    思路:采用队列思想,一边进一边出,先进先出,选择双向队列deque(其实queue已经够了,没必要用deque) /* struct TreeNode {     int val;     struc ...

  4. [leetcode]剑指offer32-1.从上到下打印二叉树

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

  5. 剑指offer23 从上往下打印二叉树

    另一种写法,不用deque class Solution { public:vector<int> PrintFromTopToBottom(TreeNode* root) {vector ...

  6. 剑指offer:按之字形打印二叉树(栈|双向队列+中序遍历)

    1. 题目描述 /**请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. */ 2. 双向队列 /*思路: ...

  7. 剑指offer之按之字形打印二叉树

    题目描述 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推. 解题思路 层次序遍历,然后存储到vector ...

  8. 【最佳解法】剑指 Offer 32 - III. 从上到下打印二叉树 III

    立志用最少的代码做最高效的表达 请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推. 例如: 给定二叉 ...

  9. 【简洁+注释】剑指 Offer 32 - II. 从上到下打印二叉树 II

    立志用最少的代码做最高效的表达 从上到下按层打印二叉树,同一层的节点按从左到右的顺序打印,每一层打印到一行. 例如: 给定二叉树: [3,9,20,null,null,15,7], 返回其层次遍历结果 ...

最新文章

  1. 阿里一道Java并发面试题 (详细分析篇)
  2. java show过时_Java中show() 方法被那个方法代替了? java编程 显示类中信
  3. apt-get erro
  4. Ansible 七(ad hoc任务)
  5. 老齐python-基础3(列表)
  6. JAVA元注解@interface详解(@Target,@Documented,@Retention,@Inherited)
  7. junit rule_使用JUnit的ExpectedException和@Rule测试自定义异常
  8. python numpy逆_numpy.linalg.inv返回奇异矩阵的逆函数 - python
  9. MVC中 数据底层联合JQUERY实现动态的安全的验证机制
  10. 拓端tecdat|python用于NLP的seq2seq模型实例:用Keras实现神经网络机器翻译
  11. 戴尔服务器t330可以用无线网卡吗,DELL T330服务器安装windows2008R2系统
  12. facade层,service 层,domain层,dao 层设计
  13. C#技术分享【PDF转换成图片——10种方案】(2013-07-25重新整理)
  14. python处理excel文件视频教程_(python处理excel文件视频教程)python怎么读取excel文件...
  15. 批处理删除文件夹下所有文件和文件夹
  16. 苹果手机怎么连接蓝牙耳机_QCY蓝牙耳机 T5在苹果IOS和安卓手机上的延迟对比
  17. iOS非常全的三方库、插件、大牛博客
  18. 4. “随机漫步的傻瓜--纳西姆.尼古拉斯.塔勒布”读后感
  19. postman-模拟上传图片
  20. 万字带图教程带你从零开始安装CentOS

热门文章

  1. 关于sscanf与结构体不能联用的问题
  2. Pod资源管理(pod容器分类,k8s添加harbor私库,上传下载私库)
  3. c语言判断一个已知的二叉树是否是二叉排序树_10584 二叉树怎样序列化才能重建...
  4. java j2se1.5_用J2SE1.5建立多任务的Java应用程序...
  5. oracle java调用存储过程_Java调用Oracle存储过程
  6. axure怎么做手机app界面_iPhone11手机APP频繁闪退怎么办?
  7. firedac连接mysql,FireDAC连接数据库
  8. 年月日时紫白推算表_年月日时飞星算法
  9. python正则表达式匹配模式屠夫之桥_Python 编程快速上手 第 7章 模式匹配与正则表达式...
  10. 连接maven_Maven系列——超简单入门级教程