剑指offer--从上往下打印二叉树

原创 2017年05月01日 18:37:32

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


思路:二叉树的层次遍历


import java.util.ArrayList;

/**
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> arrayList = new ArrayList<>();
        ArrayList<TreeNode> queue = new ArrayList<>();
        if ( root == null){
            return arrayList;
        }

        queue.add(root);
        for ( int i = 0 ; i < queue.size() ; i++){
            TreeNode node = queue.get(i);
            if ( node.left != null){
                queue.add(node.left);
            }
            if ( node.right != null){
                queue.add(node.right);
            }
            arrayList.add(node.val);
        }

        return arrayList;
    }
}
版权声明:本文为博主原创文章,若需转载,请注明http://blog.csdn.net/qq_30091945

相关文章推荐

《剑指offer》:[23]从上往下打印二叉树

题目:从上往下打印二叉树 此题实质是考察树的遍历算法,只是这种遍历不是我们熟悉的前、中、后序遍历,而是我们的层次遍历。其实也很简单。分析如下:    按层打印毫无疑问,我们需要从根节点开始...
  • gogoky
  • gogoky
  • 2016年06月09日 21:12
  • 518

剑指offer-面试题23-从上往下打印二叉树

二叉树定义: package case23_PrintFromTopToBottom; /** * 二叉树节点 * * @author WangSai * */ public clas...

剑指Offer:面试题23 从上往下打印二叉树

/* 从上往下打印二叉树: 从上往下打印出二叉树的每个结点,同一层的结点按照从左到右的顺序打印。例如输入图4.5中的二叉树,则依次打印 出8、6、10、5、7、9、11                ...

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

题目: 从上往下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。 基本思想: 遍历不是先序、中序、后序中的一种。 规律:每一次打印一个节点的时候,如果该节点有子节点,则...

剑指offer系列-T23从上往下打印二叉树

本人对java语言更熟悉,所以剑指offer代码都是通过Java实现,且涉及的核心代码全部通过牛客网的测试用例检查,感谢牛客网为我检验程序import java.util.ArrayList; imp...

剑指offer-4-面试23:从上往下打印二叉树

题目 分析 本题考点 本题扩展 举一反三 题目 从上往下打印出二叉树的每个结点,同一层的结点按照从左到右的顺序打印。例如,输入图4.5中的二叉树,则依次打印出8、6、10、5、7、9、11...

《剑指offer》之从上往下打印二叉树

题目:从上往下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印,例如图,则依次打印出8,6,10,5,7,9,11. 分析:在学习数据结构的时候,我们学习了二叉树的三种遍历方式:前序,中序,...
  • lqgzfl
  • lqgzfl
  • 2015年08月22日 01:22
  • 1057

【剑指offer】面试题32(1):从上往下不分行打印二叉树

题目从上往下打印出二叉树的每个节点,同层节点从左至右打印。思路很直观,用队列解决代码public class _32_01_PrintTreeFromTopToBottom { public s...

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

Java实现 题目: 从上往下打印出二叉树的每一个节点,同一层的节点按照从左到右的顺序打印。 例如输入图4.5中的二叉树,则一次打印出8、6、10、5、7、9、11 代码: import jav...

剑指offer(11)-从上往下打印二叉树

题目:从上往下打印出二叉树的每个结点,同一层的结点按从左到右的顺序打印。二叉树结点的定义如下:struct TreeNode { int val; struct TreeNode *l...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:剑指offer--从上往下打印二叉树
举报原因:
原因补充:

(最多只允许输入30个字)