22、从上往下打印二叉树 过,经典题目
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
示例1
输入
{5,4,#,3,#,2,#,1}
返回值
[5,4,3,2,1]
1、迭代做法,借助队列,比较简单
vector<int> PrintFromTopToBottom(TreeNode* root) { vector<int> result; if (root == nullptr) return result; queue<TreeNode*> q; q.push(root); TreeNode* node; while (!q.empty()) { node = .front(); result.push_back(node->val); if (node->left) q.push(node->left); if (node->right) q.push(node->right); q.pop();