剑指offer刷题之java实现的从上往下打印二叉树
来源:互联网 发布:沙丁鱼流量软件 编辑:程序博客网 时间:2024/04/30 21:07
package mine;import java.util.ArrayList;import java.util.LinkedList;import java.util.Queue;/** * * @author毛二 * @data 2015-8-9 * @comments层次遍历二叉树 * 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 * 访问根节点,并将根节点入队。 * 当队列不空的时候,重复以下操作。 * 1、弹出一个元素。作为当前的根节点。 * 2、如果根节点有左孩子,访问左孩子,并将左孩子入队。 * 3、如果根节点有右孩子,访问右孩子,并将右孩子入队。 */public class LevelPrintTree { public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) { ArrayList<Integer> res = new ArrayList<Integer>(); Queue<TreeNode> node = new LinkedList<TreeNode>(); if(root == null){ return res; } res.add(root.val);node.add(root); while(node.size()!=0){ root = node.poll();if(root.left!=null){res.add(root.left.val);node.add(root.left);}if(root.right!=null){res.add(root.right.val);node.add(root.right);}} return res; } public static void main(String[] args) {TreeNode t = new TreeNode();TreeNode m = t.createTree();t.inOrder(m);System.out.println();LevelPrintTree lpt = new LevelPrintTree();ArrayList<Integer> a = lpt.PrintFromTopToBottom(m);for(int i:a){System.out.print(i+" ");} }}
0 0
- 剑指offer刷题之java实现的从上往下打印二叉树
- 剑指Offer之 - 从上往下打印二叉树
- 剑指offer之从上往下打印二叉树
- 《剑指offer》之从上往下打印二叉树
- 剑指offer(三十七)之从上往下打印二叉树
- 剑指offer之十九---从上往下打印二叉树
- 剑指Offer算法实现之二十三:从上往下打印二叉树
- 剑指offer--面试题23:从上往下打印二叉树--Java实现
- JAVA实现从上往下打印二叉树(《剑指offer》)
- 剑指Offer:面试题23——从上往下打印二叉树(java实现)
- 剑指offer 面试题23 从上往下打印二叉树 Java实现
- 剑指offer面试题23:从上往下打印二叉树 Java实现
- 剑指offer第二十二题【从上往下打印二叉树】c++实现
- 剑指Offer 23题 从上往下打印二叉树 Java版
- 《剑指offer》刷题笔记(举例让抽象具体化):从上往下打印二叉树
- 剑指offer: 从上往下打印二叉树(树)
- 剑指offer:从上往下打印二叉树
- 剑指offer系列源码-从上往下打印二叉树
- 48Rotate Image
- css transition属性详解
- double型未初始化直接运算出现小错误
- matlab实现画散点图(一个x对应多个y)
- java笔记--关于线程同步(5种同步方式)
- 剑指offer刷题之java实现的从上往下打印二叉树
- 白话空间统计之五:空间关系的概念化(下)
- Java反射机制之方法反射的基本操作
- Spring MVC 直接返还HTML视图
- [leetcode-84]Largest Rectangle in Histogram(c++)
- html 学习2
- Nim中文件IO
- java 实现线程同步的方式有哪些
- 火星A+B