C++-- 二叉树的层序遍历

Posted qnbk

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++-- 二叉树的层序遍历相关的知识,希望对你有一定的参考价值。

二叉树的层序遍历

题目要求:

题目来源:力扣

class Solution 
public:
    vector<vector<int>> levelOrder(TreeNode* root) 
        if(root == nullptr)
        
            return vector<vector<int>> ();
        
        queue<TreeNode*> q;
        int levelsize = 1;
        q.push(root);
        vector<vector<int>> vv;
        while(!q.empty())
        
            vector<int> v;
            for(int i = 0;i < levelsize;i++)
            
                TreeNode* front = q.front();
                q.pop();
                v.push_back(front->val);
                if(front->left)
                    q.push(front->left);
                if(front->right)
                    q.push(front->right);
            
            vv.push_back(v);
            levelsize = q.size();
        
        return vv;
    
;

以上是关于C++-- 二叉树的层序遍历的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode二叉树的层序遍历

LeetCode二叉树的层序遍历

(二叉树)原来二叉树的层序遍历这么简单!!!

二叉树的层序遍历

NC15 求二叉树的层序遍历

102. 二叉树的层序遍历