从上往下打印出二叉树的每个节点,同层节点从左至右打印。
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> tree = new ArrayList<Integer>(); if(root==null){ return list; } Queue<TreeNode> treeNode = new LinkList<TreeNode>(); treeNode.offer(root); while(!treeNode.isEmpty()){ TreeNode node = treeNode.poll(); if(node.left!=null) { treeNode.offer(node.left); } if(node.right!=null) { treeNode.offer(node.right); } tree.add(node.val); } return tree; } }