从上到下打印二叉树

来源:互联网 发布:mac 新系统打不开u盘 编辑:程序博客网 时间:2024/06/04 19:03

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

思路:层次遍历

import java.util.ArrayList;/**public class TreeNode {    int val = 0;    TreeNode left = null;    TreeNode right = null;    public TreeNode(int val) {        this.val = val;    }}*/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<TreeNode>  listNode=new ArrayList<TreeNode> ();            ArrayList<Integer>  listVal=new ArrayList<Integer> ();            if(root==null)                return listVal;            listNode.add(root);            listVal.add(root.val);            for(int i=0;i<listNode.size();i++){              TreeNode node=  listNode.get(i);                if(node.left!=null){                    listNode.add(node.left);                    listVal.add(node.left.val);                }                if(node.right!=null){                    listNode.add(node.right);                      listVal.add(node.right.val);            }            }            return listVal;        }}