首页
学习
活动
专区
圈层
工具
发布

[leetcode二叉树系列]2 二叉树的层次遍历

本文涉及知识点 

  • 二叉树的层次遍历
  • 队列的运用

二叉树的遍历和队列的相关概念前面已经介绍,忘记了的小伙伴复习后再看效果一定翻倍哟!

二叉树知识复习:[今天给二叉树加个BGM,二叉树唱歌了!]

队列知识复习:[leetcode栈队列]1 栈实现队列

1 Leetcode102 二叉树的层次遍历

给定一个二叉树,返回其按层次遍历的节点值。(即逐层地,从左到右访问所有节点)。

示例1:

代码语言:javascript
复制
例如:
给定二叉树: [3,9,20,null,null,15,7],  3
   / \
  9  20
    /  \
   15   7返回其层次遍历结果:[
  [3],
  [9,20],
  [15,7]
]

小蓝希望大家在此思考1分钟,

效果更好哈!

01 题目解析

  • 思路

思路阐述

层次遍历,顾名思义一层一层的访问,从第一层访问到第n层,也就是先排队的同学阿姨先打饭(你要插队,你要长得乖一些?优先级队列??)。ok,这就是先进先出嘛,嘿嘿,通过前面的学习你一定就知道了需要队列了。

  • 从根节点访问,先把根节点放入队列,并记录当前层节点数。

  • 循环从队列取出元素。如果所取元素存在左右节点,将其左右节点入队。

02 动画演示

小蓝希望大家能够开开心心的学习,并能得到好的offer!也可以分享给身边朋友或者文末点个在看哟。

03 代码实现

1 c++版本

2vpython版本

3 java版本

下一篇
举报
领券