Leetcode 107二叉树的层次遍历II C++

思路:和之前的由上向下的层次遍历一样,只需要改变一下输出的顺序即可。

class Solution {
public:
    vector<vector<int>> levelOrderBottom(TreeNode* root) {
        if(!root) return {};
        vector<vector<int> > ans;
        queue<TreeNode*> q;
        q.push(root);
        while(!q.empty())
        {
            vector<int> tmp;
            int size=q.size();
            for(int i=0;i<size;++i)
            {
               TreeNode* t=q.front();q.pop();
                tmp.push_back(t->val);
                if(t->left) q.push(t->left);
                if(t->right) q.push(t->right);   
            }
            ans.insert(ans.begin(),tmp);
            
        }
        return ans;
        
    }
};

猜你喜欢

转载自blog.csdn.net/qq_43387999/article/details/87920175