利用队列来实现树的层次遍历
ArrayList<ArrayList<Integer>> Print(TreeNode root)
{
ArrayList<ArrayList<Integer>> res = new ArrayList<>();
Queue<TreeNode> queue = new LinkedList<>();
queue.add(root);
while (!queue.isEmpty())
{
int size = queue.size();
ArrayList<Integer> list = new ArrayList<>();
while (size -- > 0)
{
TreeNode treeNode = queue.poll();
list.add(treeNode.val);
if (treeNode.left != null)
queue.add(treeNode.left);
if (treeNode.right != null)
queue.add(treeNode.right);
}
res.add(list);
}
return res;
}