输入: root = [1,null,2,3,4,5,null,null,6,7,null,8,null,9,10,null,null,11,null,12,null,13,null ,null,14]
输出: [[1],[2,3,4,5],[6,7,8,9,10],[11,12,13],[14]]
/*
// Definition for a Node.
class Node {
public int val;
public List<Node> children;
public Node() {}
public Node(int _val) {
val = _val;
}
public Node(int _val, List<Node> _children) {
val = _val;
children = _children;
}
};
*/
class Solution {
public List<List<Integer>> levelOrder(Node root) {
List<List<Integer>> ans = new LinkedList<>();
if(root==null) return ans;
ans.add(Arrays.asList(root.val));
Queue<Node>q = new LinkedList<>();
q.offer(root);
int counter ;
while(!q.isEmpty())
{
counter = q.size();
LinkedList<Integer> level = new LinkedList<>();
while(counter-->0)
{
Node n = q.poll();
for(Node child:n.children)
{
level.add(child.val);
q.add(child);
}
}
if(!level.isEmpty()) ans.add(level);
}
return ans;
}
}