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

微信网站搭建十大营销网站

微信网站搭建,十大营销网站,网站优化意义,苏省住房和城乡建设厅网站题目 从上到下打印出二叉树的每个节点&#xff0c;同一层的节点按照从左到右的顺序打印。 例如: 给定二叉树: [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7 返回&#xff1a; [3,9,20,15,7] 提示&#xff1a; 节点总数 < 1000 解题思路 1.题目要求我们从…

题目

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

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

    3
   / \
  9  20
    /  \
   15   7

返回:

[3,9,20,15,7]

提示:

  1. 节点总数 <= 1000

解题思路

1.题目要求我们从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。也就是按照二叉树的层序遍历打印二叉树。

2.我们只需要一个队列即可实现,首先我们判断树是否为空,若为空则返回一个没有元素的数组。然后我们建立一个队列来执行打印操作,再建立一个可变数组来存放遍历后的元素,因为我们不确定所给树的元素的个数,所以需要一个可变数组。

3.下面我们开始遍历,首先我们将根节点入队。然后进入一个while()循环,若队列不为空则将让队列进行出队操作,然后将刚出队的元素保存在可变数组中,再判断此元素是否有左右孩子,若存在左右孩子就将左右孩子入队。之后再次判断队列是否为空。循环往复,直到队列为空,就代表整棵树已经遍历完了。

4.最后我们需要将可变数组中的元素存入一个数组并且返回即可。

举个例子:

先让三入队

 queue 不为空,让 3 出队,并且让 3 的左右孩子入队。

 queue 不为空让 9 出队,因为 9 没有左右孩子,所以不进行入队操作

 queue 不为空 让 20 出队,并且让 20 的左右孩子入队。

 queue 不为空让 15 出栈,15 没有左右孩子  ,所以不进行入队操作

  queue 不为空让 7 出栈,7 没有左右孩子  ,所以不进行入队操作

 

 queue 为空,打印结束。

代码实现

class Solution {public int[] levelOrder(TreeNode root) {if(root == null){return new int[0];}Queue<TreeNode> queue = new LinkedList<>();List<Integer> res = new ArrayList<>();queue.add(root);while(!queue.isEmpty()){TreeNode cur = queue.poll();res.add(cur.val);if(cur.left != null) queue.add(cur.left);if(cur.right != null) queue.add(cur.right);}int[] num = new int[res.size()];for(int i = 0; i < res.size(); i++){num[i] = res.get(i);}return num;}
}

测试结果

 

http://www.yayakq.cn/news/207905/

相关文章:

  • 好的素材下载网站湖北网络推广有限公司
  • 国内知名网站网站制作团队
  • pc网站手机网站商丘微网站
  • 网站推广效果如何个人网站开发工具
  • 商城网站设计实训总结搜狗站群系统
  • 做app网站的软件有哪些内容吗wordpress 主题 二次元
  • 开设赌场罪 网站开发知名网站建设联系电话
  • 旅游网站哪个做的好企业网站的做
  • 做网站用的图片分辨率哈尔滨网络优化推广公司
  • 出名的设计网站个人微信公共号可以做微网站么
  • 用表格做网站龙文国土局漳滨村新农村建设网站
  • 谁需要做网站的嘉兴网站开发流程步骤 口袋
  • 南京明月建设集团网站软件外包业务
  • 沧州企业网站优化网站建设设计图图片
  • 南宁商城网站建设wordpress自定义布局
  • 淘宝数据分析阳东网站seo
  • 郑州知名做网站公司织梦手机网站怎么修改
  • 电影网站怎么做关键词安阳信息网
  • 广州专业的网站建设公司哪家好网站如何做修改密码的相关验证
  • 上海市建上海市建设安全协会网站wordpress 支持js
  • 厦门网站设计大概多少钱提升学历要多少钱
  • 做网站需要用到哪些编程知识个人主页静态网站
  • 大型综合门户网站营销模式北京网站设计定制开发建设公司
  • 网站建设源码安装教程怎么弄一个电商平台
  • 帮忙做ppt赚钱的网站做柱状图好看的网站
  • 机关单位网站建设管理制度广州网站建设大公司排名
  • 手工企业网站模板网页设计图片显示不出来怎么弄
  • 网站建设平台的分析潍坊logo设计公司
  • 唐山网站制作方案卖网站链接
  • 浙江网站建设cmswordpress文章占据边栏