class Solution {
public:
vector<vector<int> > Print(TreeNode* pRoot) {
vector<vector<int>>res;
if(pRoot==nullptr)
return res;
queue<TreeNode*> que;
que.push(pRoot);
while(!que.empty())
{
vector<int>tmp;
const int len = que.size();
for(int i =0;i<len;++i)
{
TreeNode* p = que.front();
que.pop();
tmp.push_back(p->val);
if(p->left !=nullptr)
que.push(p->left);
if(p->right!=nullptr)
que.push(p->right);
}
res.push_back(tmp);
}
return res;
}
};
利用队列,取出队首的结点,再依次压入它的左右子树结点
层序遍历
最新推荐文章于 2021-01-14 15:36:55 发布