LeetCode 102-二叉树的层序遍历

力扣树专题-6 广度优先搜索 刷熟一个模板(层序遍历打印二叉树)秒杀一堆问题leetcode102 111 116 617 java刷题笔记 广度优先搜索算法BFS专题 根据一个模板 秒杀其他题目 阅读详情

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

解题思路:

首先我们需要了解什么是层序遍历。如下图:
在这里插入图片描述
将二叉树按照层进行划分,依次从左至右输出每一层的节点即可。我们可以利用队列进行模拟。

具体代码:
class Solution {
    public List<List<Integer>> levelOrder(TreeNode root) {
    	// 1. 保存最后的结果
        List<List<Integer>> ans = new ArrayList<List<Integer>>();
        // 2. 利用队列进行模拟
        Queue<TreeNode> queue = new ArrayDeque<>();
        // 3. 首先将根节点放入队列中
        if(root != null) {
            queue.add(root);
        }
		// 4. 依次从队列中取出节点,同时将该节点的左右节点放入队列中
        while(!queue.isEmpty()) {
        	// 5. 获取这层的节点个数
            int n = queue.size();
            // 6. 通过list保存每一层的节点数据
            List<Integer> list = new ArrayList<>();
            // 7. 依次从队列中取出节点,同时将该节点的左右节点放入队列中
            for(int i = 0; i < n; i++) {
                TreeNode curNode = queue.poll();
                list.add(curNode.val);
                if (curNode.left != null) {
                    queue.add(curNode.left);
                }
                if (curNode.right != null) {
                    queue.add(curNode.right);
                }
            }
            // 8. 保存结果
            ans.add(list);
        }
        return ans;
    }
}

时间复杂度:O(n)。
空间复杂度:O(n)。

如果对您有所帮助的话,请点个赞再退出吧!!!

原题链接

【简单】力扣算法题解析LeetCode102:二叉树的层序遍历 本文介绍了二叉树的层序遍历(BFS)实现方法。通过队列逐层处理节点,确保从左到右访问,并返回分层结果列表。代码使用Java实现,通过队列和预分配空间优化性能,时间复杂度O(n),空间复杂度O(n)。文章包含示例、解题思路、代码说明和边界处理,适合快速掌握层序遍历的核心逻辑。点击底部名片可获取完整可调试代码。 阅读详情

相关推荐

无限级树形目录-文件目录树,HTML+CSS

无限级树形目录_文件目录树,HTML单文件

无限级目录树最优算法的新研究

本文具体介绍:1。目录树的数据结构  2。探讨具体应用中数据库的查询复杂度。 表结构: id(编号)pid(父节点)nodepath(路径)nodetype(状态) 示例数据:1 0 0> F  2 0 0> D  3 2 0>2> D  4 3 0>2>3> F  测试项目:  1。获取当前节点的父节点:复杂度:O(n)  2。获取当前节点的下级子节点: 复杂度:O(n) 

多宝平台编程员的专刊 522

无限级目录树

目录树格式.htm

leetcode102. 二叉树的层序遍历

给你一个二叉树,请你返回其按层序遍历得到的结点值。(即逐层地,从左到右访问所有结点)。

2021dragon的博客 1159

论文笔记:基于对比学习的半监督分类学习方法

论文阅读笔记_CCSSL

weixin_46224126的博客 3316

记录思科cisco交换机升级iso步骤

Cisco Nexus 93180交换机版本升级

a635161812的博客 4378

目录树算法(毗邻目录模式、预排序遍历树算法)

1 毗邻目录模式(adjacency list model) 2 预排序遍历树算法(modified preorder tree traversal algorithm) 常用的是第一种:毗邻目录模式,但第二种更简洁:预排序遍历树算法,也可以称为左右值算法。关于这两种算法使用,网络上有介绍,我贴上引用地址,介绍的很清晰,值得一看。 下面分两篇博客转载一下,以备查使用,同时感谢原作...

angie 981

ADS笔记,新旧两组仿真数据进行绘图和列表对比

原理图器件参数的不同,怎么进行对比观看,操作如下。

彭辉荣的博客 3871

数据结构总结(十大排序,各种树详解)

** 二叉排序树: ** 二叉排序树或者是一棵空树,或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有节点的值均小于它的根节点的值; (2)若右子树不空,则右子树上所有节点的值均大于它的根节点的值; (3)左、右子树也分别为二叉排序树; (4)没有键值相等的节点。 ** 平衡二叉树 ** 平衡二叉树(Balanced Binary Tree)具有以下性质:它是一棵空树或它的左右两个...

weixin_42765975的博客 1641

压电阀控制器设计-总章

本文章用于回顾记录本人制作压电阀控制器的关键技术,本人所制作压电阀控制器已经上市得到应用,特在此对一些关键技术进行回顾记录,欢迎从事压电控制及压电阀相关人员一起讨论

qq_42712859的博客 850

泛微OAe9实战:如何从零搭建一个车辆预约系统(附完整代码)

本文详细介绍了如何利用泛微OA e9的建模引擎,从零开始构建一个企业级车辆预约管理系统。文章深入解析了核心数据模型设计、前后端双重预约冲突校验机制,并重点演示了如何配置自定义资源看板以实现车辆使用状态的可视化监控。该系统设计思路通用,可扩展至会议室、设备等各类共享资源的管理。

weixin_28363123的博客 143

力扣 102. 二叉树的层序遍历

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

没化妆,别看 315

黑猫带你学eMMC协议第2篇:eMMC部分相关名词释义

1 前言 1.1 声明 本文依据eMMC JEDEC5.1、网络资料及个人工作经验整理而成,如有错误请留言。 本文结合eMMC JEDEC5.1协议手册查看效果更佳。 1.2 本文背景 本文关键词不包括emmc jedec5.1协议第3章节:《Terms and definitions》内容。关于emmc协议层的关键词,直接查阅spec相关章节即可,清晰明了,此处没必要再列出。 本文为本人工作学习中常听到或常用到关乎于emmc/flash的一些关键词合集,没有固定分类,不需要强行记忆,供查询使用。 1.

黑猫奥利奥的博客 7449

力扣102.二叉树的层序遍历

力扣102.二叉树的层序遍历 最近在学习数据结构树的相关知识,于是就去力扣刷题。我是一枚蒟蒻,一天时间琢磨出来两题(惭愧),现在分享一下解题过程,大佬勿喷~ 题目描述 给你一个二叉树,请你返回其按层序遍历得到的节点值。(即逐层地,从左到右访问所有节点)。 示例: 解题方法 方法一 DFS 直接上代码: /** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left;

qq_46062236的博客 333

【麒麟系统】Rsync文件复制与同步工具

本文摘要: Rsync是一款Linux/Unix系统标配的高效文件同步工具,支持增量传输、SSH加密、断点续传等核心功能,相比SCP具有显著优势。文章详细解析了Rsync的五种标准语法格式和常用参数组合,重点介绍了本地同步、远程SSH同步(推送/拉取)的实操方法,并提供了密钥免密登录配置方案。针对企业运维场景,还讲解了文件过滤、镜像同步(--delete)、迁移同步(--remove-source-files)、空运行预校验(--dry-run)等高级功能,以及带宽限速等优化技巧,帮助用户安全高效地完成各类

信创运维工程师 · 银河麒麟 & 容器实战 | 金融生产环境迁移·等保加固 | 142篇原创·17万+阅读 999

17、神经网络训练算法与高阶模糊Cohen - Grossberg神经网络稳定性分析

本文介绍了一种新的数据驱动算法用于神经网络训练,该算法继承三次样条权重函数的优点,具有简单架构和良好泛化性能,并通过并行机制显著提升训练速度。同时,研究了高阶模糊Cohen-Grossberg神经网络(HOFCGNN)在可变及无界延迟下的稳定性,利用M矩阵理论和向量Lyapunov函数方法,证明了系统平衡点的存在性、唯一性和全局指数稳定性。研究成果为神经网络的高效训练与稳定应用提供了理论支持和技术路径。

b9c0d的博客 149

Leetcode 102. 二叉树的层序遍历

Leetcode 102. 二叉树的层序遍历1、问题分析2、问题解决3、总结 1、问题分析 题目链接:https://leetcode-cn.com/problems/binary-tree-level-order-traversal/   本质上就是一个二叉树的遍历问题。代码我已经进行了详细的注释,理解应该没有问题,读者可以作为参考,如果看不懂(可以多看几遍),欢迎留言哦!我看到会解答一下。 2、问题解决   笔者以C++方式解决。 #include "iostream" using namespace

珍惜 8975

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

LeetCode 102题解 | 二叉树的层序遍历

二叉树的层序遍历

2401_87255690的博客 987

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

LeetCode第102题_二叉树的层序遍历

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

qq_40263592的博客 1325

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

LeetCode —— 102. 二叉树的层序遍历

LeetCode —— 102. 二叉树的层序遍历

微笑,来自内心坚不可摧的自信。 739

BFS 与 DFS——力扣102.二叉树的层序遍历

本文介绍了力扣102题「二叉树的层序遍历」的两种解法:BFS(队列实现)和DFS(递归实现)。BFS利用队列逐层扫描节点,时间复杂度O(n),空间复杂度O(n);DFS通过递归记录层数信息,时间复杂度O(n),空间复杂度O(h)。两种方法各有特点,BFS直观易理解,DFS适合熟悉递归的开发者。文章还对比了两种方法的优劣,并提供了代码实现和复杂度分析,最后讨论了层序遍历的变体问题及其在面试中的应用场景。掌握层序遍历思想是理解BFS算法的关键基础。

w1311823723的博客 997

Leetcode102. 二叉树的层序遍历

Leetcode102. 二叉树的层序遍历 class Solution { public List<List<Integer>> levelOrder(TreeNode root) { List<List<Integer>> result = new ArrayList<>(); if (root == null) { return result; }

Loser_you的博客 174

102. 二叉树的层序遍历【 力扣(LeetCode) 】

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

yyh520025的博客 759

LeetCode 102:二叉树的层序遍历

目录LeetCode 102:二叉树的层序遍历题目描述解题 LeetCode 102:二叉树的层序遍历 题目描述 给你一个二叉树,请你返回其按 层序遍历 得到的节点值。 (即逐层地,从左到右访问所有节点)。 【示例】 二叉树:[3,9,20,null,null,15,7],    3   /   \ 9    20      /  \    15    7 返回其层次遍历结果: [ [3], [9,20], [15,7]] 解题     需要遍历完当前层之后再遍历下一层,自然而然想到

s_Shune 144

力扣102题:二叉树的层序遍历

力扣102题:二叉树的层序遍历,递归,迭代,层序遍历

sxycylq的博客 458

LeetCode102. 二叉树的层序遍历

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

Erice_s的博客 407
上一篇: LeetCode 104-二叉树的最大深度
下一篇: LeetCode 84-柱状图中最大的矩形
Guo_Chuang
博客等级 码龄6年 9粉丝 61原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值