一.思路
层序遍历借用队列的数据结构实现,先进先出,依次放入每一层从左至右的节点,再依次出去,即可完成遍历
二.题目
力扣102
给你二叉树的根节点 root
,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。
三.代码实现
class Solution {
public:
vector<vector<int>> levelOrder(TreeNode* root)
{
queue<TreeNode*>queue1;
vector<vector<int>>result;
if(root != NULL)
{
queue1.push(root);
}
while(!queue1.empty())
{
int size = queue1.size();
vector<int>temp;
for(int i = 0;i < size;i++)
{
TreeNode* node = queue1.front();
queue1.pop();
temp.push_back(node->val);
if(node->left)
queue1.push(node->left);
if(node->right)
queue1.push(node->right);
}
result.push_back(temp);
}
return result;
}
};