题目描述从上往下打印出二叉树的每个节点同层节点从左至右打印。解题思路用两个ArrayList来实现队列的功能当一个元素出栈时就需要将该元素的左右子树入栈每次出栈则将元素放到list中最后返回源码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 ArrayListInteger PrintFromTopToBottom(TreeNode root) { ArrayListInteger list new ArrayListInteger(); ArrayListTreeNode node new ArrayListTreeNode(); if(root null) { return list; } node.add(root); while(node.size() 0) { TreeNode n node.remove(0); if(n.left ! null) node.add(n.left); if(n.right ! null) node.add(n.right); list.add(n.val); } return list; } }