Example: BST Leveorder - rFronteddu/general_wiki GitHub Wiki

class Solution {
    public List<List<Integer>> levelOrder(TreeNode root) {
        List<List<Integer>> out = new LinkedList<>();
        if(root == null) return out;
        levelorder (root, out, 0);
        return out;
    }
    
    void levelorder(TreeNode node, List<List<Integer>> out, int level) {
        if (node == null) { return; }
        
        if (out.size() == level) {
            // Create a new level list if required
            out.add (new LinkedList<Integer>());
        }
        out.get(level).add (node.val);
        levelorder (node.left, out, level + 1);
        levelorder (node.right, out, level + 1);
    }
}
⚠️ **GitHub.com Fallback** ⚠️