/// https://leetcode.com/problems/binary-tree-level-order-traversal-ii/ /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: vector> levelOrderBottom(TreeNode* root) { vector > v; if(root==NULL){ return v; } vector temp; /// storing is storing result of current level queue q; q.push(root); q.push(NULL); while(!q.empty()){ TreeNode* f = q.front(); q.pop(); if(f==NULL){ ///cout<val); if(f->left){ q.push(f->left); } if(f->right){ q.push(f->right); } } } reverse(v.begin(),v.end()); return v; } };