- 题目描述:
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
解题思路:采取队列进行层次遍历。
- 题目描述:
按层级把二叉树打印成多行。
解决思路:使用队列以及两个ArrayList来实现。
在剑指offer上面,题目结果必须完全一致
- import java.util.ArrayList;
- import java.util.Queue;
- import java.util.LinkedList;
- /**
- public class TreeNode {
- int val = 0;
- TreeNode left = null;
- TreeNode right = null;
- TreeNode root = null;
- public TreeNode(int val) {
- this.val = val;
- this.left = left;
- this.right = right;
- }
- public TreeNode(){
- }
- }
- **/
- public class Solution {
- public ArrayList PrintFromTopToBottom(TreeNode root) {
- ArrayList all = new ArrayList<ArrayList<Integer> >();
- Queue<TreeNode> que = new LinkedList<TreeNode>();
- que.add(root);
- while(!que.isEmpty()){
- ArrayList<Integer> list = new ArrayList<Integer>();
- int cun = que.size();