给你二叉树的根节点 root ,返回其节点值的 层序遍历 。 (即逐层地,从左到右访问所有节点)。

示例 1:

输入:root = [3,9,20,null,null,15,7]
输出:[[3],[9,20],[15,7]]

思路:

BFS算法,使用队列。层序遍历的一般写法,通过一个 while 循环控制从上向下一层层遍历,for 循环控制每一层从左向右遍历:

class Solution {
public:vector<vector<int>> levelOrder(TreeNode* root) {vector<vector<int>> res;if (!root) return res;queue<TreeNode*> q;q.push(root);while (!q.empty()){vector<int> tmp;int len = q.size();for (int i = 0; i < len; i++){TreeNode* cur = q.front();q.pop();tmp.push_back(cur->val);if (cur->left) q.push(cur->left);if (cur->right) q.push(cur->right);}res.push_back(tmp);}return res;}
};

102.二叉树的层序遍历相关推荐

  1. LeetCode Algorithm 102. 二叉树的层序遍历

    102. 二叉树的层序遍历 Ideas 二叉树的层序遍历类似于图的广度优先搜索,都是要借助队列这种数据结构来实现. 首先将根节点添加到队列中,然后就是套BFS的模板,稍微改动一下. 只要队列不为空就循 ...

  2. 102. 二叉树的层序遍历 golang

    102. 二叉树的层序遍历 给你一个二叉树,请你返回其按 层序遍历 得到的节点值. (即逐层地,从左到右访问所有节点). 示例: 二叉树:[3,9,20,null,null,15,7], 3/ \9 ...

  3. 【LeetCode】【HOT】102. 二叉树的层序遍历(队列)

    [LeetCode][HOT]102. 二叉树的层序遍历 文章目录 [LeetCode][HOT]102. 二叉树的层序遍历 package hot;import java.util.ArrayLis ...

  4. 代码随想录算法训练营第15天,102.二叉树的层序遍历、226.翻转二叉树、101.对称二叉树

    102.二叉树的层序遍历.226.反转二叉树.101.对称二叉树 102.二叉树的层序遍历 二叉树的层次遍历,我们可以定义一个队列, 当访问到某一个节点时,我们将它存在的左右节点放入队列中,便可达到按 ...

  5. 代码随想录算法训练营day15 | 102. 二叉树的层序遍历、226. 翻转二叉树、101. 对称二叉树

    102. 二叉树的层序遍历 class Solution { public:vector<vector<int>> levelOrder(TreeNode* root) {de ...

  6. 代码随想录算法训练营第十五天 | 102. 二叉树的层序遍历 | 226.翻转二叉树 | 101. 对称二叉树

    递归三部曲 确定递归函数的参数和返回值 确定终止条件 确定单层递归的逻辑 102. 二叉树的层序遍历 题解及想法 解法一 :递归法 class Solution {public List<Lis ...

  7. 代码随想录算法训练营第十三天|102.二叉树的层序遍历、226.翻转二叉树、101.对称二叉树

    链接:代码随想录 文章目录 102.二叉树的层序遍历 226.翻转二叉树 101.对称二叉树 解题方法 题目思路 示例代码 总结 解题思路 1.102.二叉树的层次遍历 解题思路 递归法,创立二维数组 ...

  8. 【代码随想录】LC 102. 二叉树的层序遍历

    目录 一.题目 1.原题链接 2.题目描述 二.解题报告 1.思路分析 2.时间复杂度 3.代码详解 三.知识风暴 一.题目 1.原题链接 力扣 2.题目描述 给你二叉树的根节点 root ,返回其节 ...

  9. LeetCode 102二叉树的层序遍历103二叉树锯齿形遍历104二叉树的最大深度

    微信搜一搜:bigsai 大家都在关注的刷题.学习数据结构和算法宝藏项目 关注回复进群即可加入力扣打卡群,欢迎划水.近期打卡: LeetCode 97交错字符串(动态规划) LeetCode 98验证 ...

  10. 32、用队列实现层序遍历-102.二叉树的层序遍历

    题目描述: 给你二叉树的根节点 root ,返回其节点值的 层序遍历 . (即逐层地,从左到右访问所有节点). 思路:之前在剑指Offer中做过 使用队列先入先出的性质,实现层序遍历! DFS(深度优 ...

最新文章

  1. 十步,教你把Python运行速度提升 30%
  2. 一文读懂大数据漏斗分析!
  3. 读张鸣-《辛亥:摇晃的中国》感
  4. tf.argmax tf2版本
  5. 使用wireshark抓包,本地环回测试通信数据已经通过SM4国密算法加密
  6. openlayers 3读取加载geojson格式数据
  7. Linux服务器---xopps
  8. 是时候详细探究webview了
  9. IdTCP的C++Builder2010示例(转)
  10. AB_PLC编程软件RSLogix_500_与PLC通讯详细说明
  11. Java程序设计实验三 面向接口编程
  12. 计算机的ps快捷键,【教程】如何设置ps的快捷键?
  13. win server 2008r2 相关设置
  14. [BJOI2019] 排兵布阵
  15. 计算机不断自动重启,电脑不断自动重启怎么办_解决电脑不断自动重启的方法...
  16. 微信小程序自定义导航栏(带汉堡包菜单)
  17. 记录下XPO生成的SQL语句
  18. 一个武侠游戏的成就界面需要针对每一个成就阶段配一句话,阶段分别是:默默无闻、初涉江湖、小有所成、一代宗师。想一想你会怎么写这个文案
  19. eclipse c语言 自动补全,eclipse里头怎么设C/C++的智能提示
  20. java.lang.ClassCastException: [Ljava.lang.Object; cannot be cast to [Ljava.lang.String,toArray向下转型失败

热门文章

  1. 9 SD配置-企业结构-分配-给公司代码分配销售组织
  2. 25 PP模块-创建工厂日历报错-请输入年度xxxx和xxxx之间的有效区域
  3. linux相关系统下qtcreator调试程序
  4. 笨方法“学习python笔记之列表
  5. [有限元] Ansys Workbench Mechanical 中的应力应变显示类型的文档翻译
  6. jpg , png 图片转SVG格式(资源篇)
  7. 跨域 · 后台设置:头部header(服务器端添加属性、属性值,浏览器端获取属性及其值) - 数据篇
  8. 测试用例编号_怎样编写测试用例更完整,更能提升工作效率?来试试这套方法!...
  9. YShout一款PHP+TXT+Ajax嵌入式在线聊天室源码
  10. 超好看的引导购买页源码