力扣小白刷题之637题二叉树的层平均值

题目描述

给定一个非空二叉树,返回一个由每层节点平均值组成的数组。

思路

BFS : 使用BFS进行层次遍历,不需要使用两个队列来分别存储当前层的节点和下一层的节点,因为在开始遍历一层的节点时,当前队列中的节点就是当前层的节点数,只要控制遍历这么多节点数,就能保证这次遍历的都是当前层的节点。

  • 时间复杂度:O(n),n 是树中节点个数。
  • 空间复杂度:O(m),m 是树中每一层节点个数的最大值,即为BFS中使用队列存储同一层节点需要的空间。

代码

力扣小白刷题之637题二叉树的层平均值