import java.util.*;

/*

  • public class TreeNode {
  • int val = 0;
  • TreeNode left = null;
  • TreeNode right = null;
  • }
  • /

public class Solution {
/**
*
* @param root TreeNode类
* @return int整型ArrayList<ArrayList<>>
*/
public ArrayList<ArrayList<integer>> levelOrder (TreeNode root) {
// write code here
ArrayList<ArrayList<integer>> result = new ArrayList<ArrayList<integer>>();
if (root == null) return result;
LinkedList<treenode> queue = new LinkedList<treenode>();
queue.addLast(root);
int size;
while(queue.size()>0) {
size = queue.size();
ArrayList<integer> oneLevel = new ArrayList<integer>();
result.add(oneLevel);
while(size>0) {
size --;
TreeNode node = queue.pollFirst();
oneLevel.add(node.val);
if (node.left != null) queue.addLast(node.left);
if (node.right != null) queue.addLast(node.right);
}
}
return result;
}
}</integer></integer></treenode></treenode></integer></integer></integer>