标签:linked == size 队列 多行 poll 输出 试题 res
题目描述:从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
思路:借助队列实现
import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; public class Solution { ArrayList<ArrayList<Integer> > Print(TreeNode pRoot) { ArrayList<ArrayList<Integer>> result=new ArrayList<>(); if(pRoot==null) return result; Queue<TreeNode> queue=new LinkedList<>(); queue.add(pRoot); while(!queue.isEmpty()){ int curNodeNum=queue.size(); ArrayList<Integer> temp=new ArrayList<>(); while(curNodeNum>0){ TreeNode node=queue.poll(); temp.add(node.val); if(node.left!=null) queue.add(node.left); if(node.right!=null) queue.add(node.right); curNodeNum--; } result.add(temp); } return result; } }
标签:linked == size 队列 多行 poll 输出 试题 res
原文地址:https://www.cnblogs.com/Aaron12/p/9531759.html