Binary Tree Level Order Traversal - rFronteddu/general_wiki GitHub Wiki
Given the root of a binary tree, return the level order traversal of its nodes' values. (i.e., from left to right, level by level).
class Solution {
public List<List<Integer>> levelOrder(TreeNode root) {
List<List<Integer>> l = new ArrayList<>();
if (root == null) {
return l;
}
Queue<TreeNode> q = new LinkedList<>();
q.add(root);
while (!q.isEmpty()) {
int levelSize = q.size();
List<Integer> currLevelList = new ArrayList<>();
for (int i = 0; i < levelSize; i++) {
var curr = q.poll();
currLevelList.add(curr.val);
if (curr.left != null) {
q.add (curr.left);
}
if (curr.right != null) {
q.add (curr.right);
}
}
l.add (currLevelList);
}
return l;
}
}