题目描述
从上往下打印出二叉树的每个节点,同层节点从左至右打印。

题目地址
思路
- 广度优先搜索 + 队列
- 注意入队时先左子节点,后右节点
- 注意不需要修改原二叉树
Code
class Solution {
queue<TreeNode*> q; // 辅助队列
public:
vector<int> PrintFromTopToBottom(TreeNode* root) {
if (root == nullptr)
return vector<int>();
q.push(root);
vector<int> ret;
while (!q.empty()) {
auto cur = q.front();
q.pop();
ret.push_back(cur->val);
if (cur->left != nullptr)
q.push(cur->left);
if (cur->right != nullptr)
q.push(cur->right);
}
return ret;
}
};

378

被折叠的 条评论
为什么被折叠?



