网站的建设维护,安徽省建设造价管理协会网站,客似云来网站建设,做网站怎么选择服务器从上到下打印出二叉树的每个节点#xff0c;同一层的节点按照从左到右的顺序打印。 例如: 给定二叉树: [3,9,20,null,null,15,7],
返回#xff1a; [3,9,20,15,7]
来源#xff1a;力扣#xff08;LeetCode#xff09; 链接#xff1a;https://leetcode-cn.com/problem…从上到下打印出二叉树的每个节点同一层的节点按照从左到右的顺序打印。 例如: 给定二叉树: [3,9,20,null,null,15,7],
返回 [3,9,20,15,7]
来源力扣LeetCode 链接https://leetcode-cn.com/problems/cong-shang-dao-xia-da-yin-er-cha-shu-lcof 著作权归领扣网络所有。商业转载请联系官方授权非商业转载请注明出处。
解题思路 这道题明显是二叉树的层序遍历。首先定义一个队列将二叉树的根节点入队当队列非空访问队首元素然后判断其左右孩子是否为空不为空的话入队。 代码
/*** Definition for a binary tree node.* struct TreeNode {* int val;* TreeNode *left;* TreeNode *right;* TreeNode(int x) : val(x), left(NULL), right(NULL) {}* };*/
class Solution {
public:vectorint levelOrder(TreeNode* root) {if(root NULL) return {};vectorint ans;queueTreeNode* q;q.push(root);while(!q.empty()){TreeNode* temp q.front();ans.push_back(temp-val);q.pop();if(temp-left ! NULL) q.push(temp-left);if(temp-right ! NULL) q.push(temp-right);}return ans;}
};