当前位置: 首页 > news >正文

从上到下打印二叉树

题目描述

从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。

例如:
给定二叉树: [3,9,20,null,null,15,7],

在这里插入图片描述

返回:

[3,9,20,15,7]

算法思想

建立一个vector数组ret用来当做返回的结果数组,建立一个队列用来接收二叉树的内容,当队列不为空时,取出队列的队头元素temp,将其val数值压入结果数组中,然后再将该队列队头元素弹出,最后依次访问temp的左右子树,若不为空,压入队列中,进行下一步的判断和结果数组的压入。

代码实现

class Solution {
public:vector<int> levelOrder(TreeNode* root) {vector<int> ret;if(!root) return ret;queue<TreeNode*> que;que.push(root);while(!que.empty()){TreeNode* temp = que.front();ret.push_back(temp->val);que.pop();if(temp->left) que.push(temp->left);if(temp->right) que.push(temp->right);}return ret;}
};
http://www.lryc.cn/news/96647.html

相关文章:

  • 【推荐】排序模型的调优
  • 负载均衡安装配置详解
  • Java-逻辑控制
  • UE 透明渲染次序
  • 【C++】多态原理剖析,Visual Studio开发人员工具使用查看类结构cl /d1 reportSingleClassLayout
  • vue实现flv格式视频播放
  • iptables安全技术和防火墙
  • 微信小程序开发5
  • 【算法题】2681. 英雄的力量
  • fastutil简单测试下性能
  • 【FAQ】关于无法判断和区分用户与地图交互手势类型的解决办法
  • 腾讯云裸金属服务器CPU型号处理器主频说明
  • 工程安全监测无线振弦采集仪在建筑物中的应用
  • 【iOS】isKindOfClass和isMemberOfClass方法
  • 李飞飞「具身智能」VoxPoser:0预训练完成复杂指令
  • 前端八股文
  • 前端年度工作述职报告优秀
  • 【MyBatis 学习一】认识MyBatis 第一个MyBatis查询
  • TCP 和 UDP
  • springboot配置自定义数据源(Druid德鲁伊)的步骤。
  • K8S:容器日志收集与管理
  • Flutter系列文章-Flutter进阶
  • 【C++】C++11右值引用|新增默认成员函数|可变参数模版|lambda表达式
  • rust学习-线程
  • 题目:2180.统计各位数字之和为偶数的整数个数
  • 3dsmax制作一个机器人
  • C++的类型转换运算符:reinterpret_cast
  • flask中的cookies介绍
  • adnroid 11. 0 Activity启动流程图解
  • 了解Unity编辑器之组件篇Physics(四)