题目描述:从上到下打印二叉树的节点,同一层的从左到右打印

思路:采用队列来存储单层的节点,然后通过删除队列的头结点操作,依次遍历每一层。

代码为:

 import java.util.ArrayList;
/**
public class TreeNode {
int val = 0;
TreeNode left = null;
TreeNode right = null; public TreeNode(int val) {
this.val = val; } }
*/
//用ArrayList来模拟一个队列
public class Solution {
public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
ArrayList<Integer> list = new ArrayList<>();
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;
}
}

最新文章

  1. 无脑简单 命令升级git Centos
  2. vtk工作流
  3. VC++6.0编译器标记的那些内存值
  4. asp.net 验证正则表达式
  5. (String)151. Reverse Words in a String
  6. Segments---poj3304(判断直线与线段的位置关系)
  7. jQuery动态加载css文件实现方法
  8. Reverse Linked List II [LeetCode]
  9. linux 监控系统缓存和cpu
  10. 好用的侧边栏菜单/面板jQuery插件
  11. ASP.Net MVC View
  12. git合并远端分支到本地分支的两种方式
  13. TcpListener 示例
  14. [codevs]1087麦森数
  15. Java开发面试题整理(2019春招)
  16. Hadoop: the definitive guide 第三版 拾遗 第四章
  17. Linux Ubuntu下安装配置mysql
  18. Java异常总结和Spring事务处理异常机制浅析
  19. Java之字节码(3) - 简单介绍
  20. Spring AOP表达式报错:Pointcut is not well-formed: expecting &#39;name pattern&#39; at character position

热门文章

  1. JavaScript中的ononline事件和onoffline事件
  2. Foundations of Game Engine Development Volume 1 Mathematics (Eric Lengyel 著)
  3. python selenium-webdriver 元素操作之鼠标操作(四)
  4. C++vector针对排序操作练习
  5. A记录、CNAME和URL转发区别
  6. 理解OpenShift(5):从 Docker Volume 到 OpenShift Persistent Volume
  7. [UE4]Grabbable接口
  8. html字体加大标签与写法介绍
  9. 05-Eclispe配置Tomcat插件
  10. JavaScript 正则表达式学习笔记