剑指Offer-23

来源:互联网 发布:php 数组长度函数 编辑:程序博客网 时间:2024/06/07 21:50

题目:

从上往下打印出二叉树的每个结点,同一层的结点按照从左到右的顺序打印。

实现

// coding = javapublic class Solution23 {    public static void printFromTopToBottom(BinaryTreeNode root){        Queue queue = new ArrayDeque<BinaryTreeNode>();        if(root == null){            return;        }        queue.add(root);        while(queue.size()!=0){            BinaryTreeNode cur = queue.poll();            System.out.print(cur.value);            if(cur.left!=null){                queue.add(cur.left);            }            if(cur.right!=null){                queue.add(cur.right);            }        }    }    public static void main(String[] args){        BinaryTreeNode root = new BinaryTreeNode();        root.value = 6;        root.left = new BinaryTreeNode();        root.left.value = 5;        root.right = new BinaryTreeNode();        root.right.value = 4;        root.left.left = new BinaryTreeNode();        root.left.left.value = 3;        root.left.right = new BinaryTreeNode();        root.left.right.value =2;        root.right.left = new BinaryTreeNode();        root.right.left.value = 1;        Solution23.printFromTopToBottom(root);    }}