题目描述
| 从上往下打印出二叉树的每个节点,同层节点从左至右打印。 |
题目分析
| 本题考察层次遍历二叉树,通过一个队列存储树的节点。 |
代码实现
class Solution {
public:
vector<int> PrintFromTopToBottom(TreeNode* root) {
deque<TreeNode*>treeNodes;
vector<int>data;
if (root == NULL)
return data;
treeNodes.push_back(root);
while (treeNodes.size())
{
data.push_back(treeNodes.front()->val);
if (treeNodes.front()->left)
treeNodes.push_back(treeNodes.front()->left);
if (treeNodes.front()->right)
treeNodes.push_back(treeNodes.front()->right);
treeNodes.pop_front();
}
return data;
}
};