8ms cpp solution without queue
\n    vector> levelOrder(TreeNode root) {\n        vector> result;\n        if (!root) return result;\n        Helper(root, result, 0);\n        return result;\
\n    vector<vector<int>> levelOrder(TreeNode* root) {\n        vector<vector<int>> result;\n        if (!root) return result;\n        Helper(root, result, 0);\n        return result;\n    }\n    void Helper(TreeNode* root, vector<vector<int>> &result, int h){\n        if (!root) return;\n\n        if (result.size()<h+1){\n            vector<int> tmp;\n            tmp.push_back(root->val);\n            result.push_back(tmp);\n        }else{\n            result[h].push_back(root->val);\n        }\n        Helper(root->left, result, h+1);\n        Helper(root->right, result, h+1);\n    }\n};
['C++']