题目描述
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
思路:BFS用队列
class Solution {
public:
vector<int> PrintFromTopToBottom(TreeNode* root)
{
queue<TreeNode*> q;
vector<int> v;
if(root==nullptr)return v;
q.push(root);
while(!q.empty())
{
root = q.front(); //记录队头
if(root->left)q.push(root->left);//如果有子节点则,入队
if(root->right)q.push(root->right);
v.push_back(root->val);//队头的值打印
q.pop();
}
return v;
}
};