题目描述:
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
/* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; TreeNode(int x) : val(x), left(NULL), right(NULL) { } };*/
class Solution {
public:
vector<int> PrintFromTopToBottom(TreeNode *root) {
vector<int> result;
std::deque<TreeNode *> d;
d.push_back(root);
while(!d.empty()){
TreeNode *pNode = d.front();
d.pop_front();
if(!pNode) continue;
result.push_back(pNode->val);
d.push_back(pNode->left);
d.push_back(pNode->right);
}
return result;
}
};
如有建议或其他问题,可随时给我们留言。或者到以下链接:
Star/Fork/Push 您的代码,开源仓库需要您的贡献。
请查看Coding 题目网址和收藏Accepted代码仓库,进行coding!!!