102 - Binary Tree Level Order Traversal(BFS)

102. Binary Tree Level Order Traversal [easy] (Python) 题目链接https://leetcode.com/problems/binary-tree-level-order-traversal/题目原文 Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level). For 阅读详情

Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level).

For example:
Given binary tree {3,9,20,#,#,15,7},

    3
   / \
  9  20
    /  \
   15   7

return its level order traversal as:

[
  [3],
  [9,20],
  [15,7]
]

confused what "{1,#,2,3}" means? > read more on how binary tree is serialized on OJ.

Subscribe to see which companies asked this question

思路分析:

基于TreeNode新构造一个数据结构Node

struct TreeNode
{
	int val;
	TreeNode *left;
	TreeNode *right;
	TreeNode(int x) : val(x), left(NULL), right(NULL) {}
};

struct Node
{
    TreeNode *node;
    int level;
    Node(){}
    Node(TreeNode *n, int l):node(n), level(l){}
};

class Solution {
private:
    vector<vector<int> > ret;
public:
    vector<vector<int> > levelOrder(TreeNode *root) {
        // Start typing your C/C++ solution below
        // DO NOT write int main() function
        ret.clear();
        
        if (root == NULL)
            return ret;
        
        queue<Node> q;
        
        q.push(Node(root, 0));
        
        vector<int> a;
        int curLevel = -1;
        
        while(!q.empty())
        {
            Node node = q.front();
            if (node.node->left)
                q.push(Node(node.node->left, node.level + 1));
            if (node.node->right)
                q.push(Node(node.node->right, node.level + 1));
                
            if (curLevel != node.level)
            {
                if (curLevel != -1)
                    ret.push_back(a);
                curLevel = node.level;
                a.clear();
                a.push_back(node.node->val);                
            }
            else
                a.push_back(node.node->val);
                
            q.pop();
        }
        
        ret.push_back(a);
        
        return ret;
    }
};


PyCharm + Anaconda虚拟环境:完美配置PySide6开发三件套(Designer/UIC/RCC)的避坑指南 本文详细介绍了如何在PyCharm和Anaconda虚拟环境中配置PySide6开发三件套(Designer/UIC/RCC),提供从环境准备到工具集成的完整解决方案。通过清晰的路径定位和PyCharm外部工具配置指南,帮助开发者快速搭建高效的Python GUI开发环境,避免常见配置陷阱。 阅读详情

相关推荐

我爬取了某非法网贷后台系统数据,终于知道什么叫做利滚利滚利滚利了

我爬取了非法贷款的后台网站!

weixin_44042821的博客 2882

Leetcode 102. Binary Tree Level Order Traversal(BFS+DFS实现)

/** * 可以为每个结点,增加一个变量记录level,方便对结点们按层分别记录 * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x)

Xurui_Luo的博客 210

基于LendingClub数据的信贷分析和建模报告

一:课题分析 二:数据获取 三:数据探索 3.1主要特征含义理解 3.2特征分布 3.2.1目标特征分布 3.2.2分类变量的分布 3.2.3连续数值特征分布 3.2.4时序特征分布 3.2.5文字特征分布 3.2.6两两特征的协方差 四:数据预处理 4.1数据集划分 4.2特征缺失值识别与处理 4.2.1严重缺失值的处理 4.2.2缺失值填充 4.3同值性特...

棒子皮蹦蹦床 2万+

[BFS]102. Binary Tree Level Order Traversal

题目: Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level). For example: Given binary tree [3,9,20,null,null,15,7], 3 / \

Rewind_L的博客 328

抖音短连接v.douyin.com/xxx 如何生成?

最近公司有个需求,在抖音里如何宣传自己的网站,并且不要有拦截域名的提示,截图如下。 通过ida反编译抖音的app后,将下载后的ipa文件用解压缩软件(如7zip等)解压,从解压后的目录Payload/Aweme.app/找到Aweme可执行文件,拖入ida进行反编译,ida可以检测objective-c语法。 然后进入主题,既然是聊天发消息,就尝试在ida里搜索"message",看看能否找到对...

kakuapi的博客 3万+

在微信小程序中如何引入iconfont

略

sayyy的专栏 4327

LeetCode 102. Binary Tree Level Order Traversal(bfs)

题目是 用队列每一次取它一层的元素,放入到ord里面。 然后每层完了加入到order里面。 核心是bfs 代码如下: /**  * Definition for a binary tree node.  * public class TreeNode {  *     int val;  *     TreeNode left;  *     TreeNode righ

sinat_24048051的博客 285

硬件测试入门--环路响应(Bode)测试

环路分析的一个重要作用就是分析开关电源的稳定性。扫频测试原理主要是给开关电源电路注入一个频率变化的正弦信号,测量开关电源在频域上的特性,通过分析穿越频率、增益裕度和相位裕度来判断环路是否稳定,可以为电子工程师设计稳定的控制电路提供直观的数据。开关电源的稳定性关系到整个应用系统的可靠性,利用伯德图可以看出在不同频率下系统增益的大小和相位。通过伯德图来对开关电源的环路稳定性进行判断和分析已经成为评估开关电源可靠性必不可少的方法。

songninging的博客 1万+

Leetcode 102 Binary Tree Level Order Traversal 二叉树+BFS

二叉树的层次遍历 1 /** 2 * Definition for a binary tree node. 3 * struct TreeNode { 4 * int val; 5 * TreeNode *left; 6 * TreeNode *right; 7 * TreeNode(int x) : val(x...

anzhuzeng4278的博客 75

BAPI创建委外采购订单

使用BAPI BAPI_PO_CREATE1创建委外采购订单,组件为手工输入时,有几个点需要注意: 1、已通过CS01创建过BOM的物料,创建时会自动带出components。如果要修改当前组件清单,可以通过设置pocomponents-change_id = 'E’来实现 lv_sline = lv_sline + 1. ls_pocomponents-po_item = l_ebelp + 10. ls_pocomponents-ITEM_NO = l

Buffalo_soldier的博客 3265

【GlobalMapper精品教程】084:tif(tfw)、jpg(jgw)、png(pgw)的区别与联系

摘要:本文介绍了TFW、JGW、PGW等地理参考文件的基本原理和应用。这些文件通过简单的文本格式存储栅格图像的地理坐标信息,适用于平面坐标系下的GIS数据处理。文章详细说明了文件各行的含义,并提供了在ArcGIS和Globalmapper中生成这些文件的具体操作步骤,包括导出TIFF、JPG、PNG格式时勾选生成对应坐标文件的选项。这些文件虽然简单易用,但仅适用于平面坐标系,且功能相对有限。配套视频教程提供了更详细的操作演示。

智慧空间实验室 2405

leetcode 102. Binary Tree Level Order Traversal BFS广度优先遍历

Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).For example: Given binary tree [3,9,20,null,null,15,7], 3 / \ 9 20

JackZhangNJU的专栏 679

对雷达中相位补偿概念的一些理解

基于多普勒相位补偿的速度扩展方法和DBF测角,两者本质上都是对相位进行补偿。

qq_42235129的博客 4031

102. Binary Tree Level Order Traversal(BFS模板背诵并记忆)

Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level). class Solution { public List&amp;lt;List&amp;lt;Integer&amp;gt;&amp;gt; levelOrder(TreeNode ro...

weixin_28739073的博客 217

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

贝叶斯统计 [韦来生编]

贝叶斯(Bayes)统计是近几十年来迅速发展起来的数理统计的一个重要分支。贝叶斯方法与经典统计方法的主要不同之处是进行统计推断时除了利用样本信息外,还要利用参数的先验信息,因此可以提高统计推断或统计决策的效果。它在经济、金融、生物、医学、自然科学和社会科学等许多领域具有广泛的应用。贝叶斯方法的研究已渗透到了统计学的几乎所有领域。作者在给中国科学技术大学概率论与数理统计专业本科生开设的“数理统计”课程中有一章专门讲授“贝叶斯方法和统计决策理论”,近十年来也给中国科学技术大学概率统计专业研究生开设过几次“贝叶斯分析”课。本书是在对过去讲稿的内容作了适当的增减和调整的基础上完成的。  本书共分六章。第1章是绪论,介绍了贝叶斯统计的若干基本概念,同时对必要的数理统计的基础知识有重点地作了回顾。第二章介绍了确定先验分布的若干可供选择的方法。第三章介绍了几类常见统计模型参数的后验分布的主要结果和计算方法。第四章和第五章分别介绍了“贝叶斯统计推断”和“贝叶斯统计决策”的内容。第六章介绍了贝叶斯统计计算的若干方法,包括蒙特卡洛方法和马尔可夫链蒙特卡洛(MCMC)方法以及相关统计软件的简介。本书的每一章附右大量的例题和习题,书末附有常用的几个表格和部分习题解答供读者查用。  大约可在54学时内讲授本书的第1章至第六章的主要内容,教师可根据学时需要选讲本书第1章至第六章的部分内容。书中标“*”号的章节可略去不讲,留给读者作为阅读材料。第六章例题中的R代码和部分例题的数据文件等可从作者个人主页下载。  作者在编写本书的过程中参考了J.O.Berger教授的《统计决策论及贝叶斯分析》和茆诗松教授编写的《贝叶斯统计》等书中的一些内容,以及《贝叶斯分析》一书中由张伟平博士编写的有关贝叶斯统计计算的一些内容。在此表示衷心感谢。  本书编写准备过程中,中国科学技术大学统计与金融系的几个研究生帮助完成了本书部分中文的录入和排版,作者对他们的辛勤工作表示真诚的感谢。高等教育出版社为本书的出版给予了大力支持。在此一并致谢。

LeetCode 102. Binary Tree Level Order Traversal(二叉树bfs)

题目来源:https://leetcode.com/problems/binary-tree-level-order-traversal/ 问题描述 102.Binary Tree Level Order Traversal Medium Given a binary tree, return thelevel ordertraversal of its nodes' values. ...

da_kao_la的博客 197

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

(二叉树 BFS) leetcode102. Binary Tree Level Order Traversal

Given a binary tree, return thelevel ordertraversal of its nodes' values. (ie, from left to right, level by level). For example:Given binary tree[3,9,20,null,null,15,7], 3 / \ 9 ...

103

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

102. Binary Tree Level Order Traversal(BFS)

BFS

stsfang 298

102:Binary Tree Level Order Traversal【树】【BFS】

题目链接:click~ /*题意:将二叉树中的结点一层一层的输出*/ /** *思路:用两个队列,一个队列保存当前层的结点,另一队列保存下一层的结点。 * 当遍历某层结点时,插入下一层的结点。 */ class Solution { public: vector > levelOrder(TreeNode *root) { vector v;

no pains,no gains 500

[LeetCode] 102. Binary Tree Level Order Traversal_Medium tag: BFS

Given a binary tree, return thelevel ordertraversal of its nodes' values. (ie, from left to right, level by level). For example:Given binary tree[3,9,20,null,null,15,7], 3 / \ 9 20 ...

weixin_30673715的博客 75

LeetCode 102. 二叉树的层序遍历 Binary Tree Level Order Traversal (广度优先搜索(BFS))...

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

AI天才研究院 8979

algorithm bfs <T> Binary Tree Level Order Traversal 1/99

给定一棵二叉树,返回它的层序遍历(逐层从左到右)。

weixin_44525183的博客 209

[LeetCode] Binary Tree Level Order Traversal 二叉树层次遍历(DFS | BFS)

题目:Binary Tree Level Order Traversal - 二叉树层次遍历 (DFS | BFS) Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, level by level). For example: Given binary tree {3,9,20,#,#,15,7},

杨秀璋的专栏 8934

LeetCode 102. Binary Tree Level Order Traversal 题解

本题是二叉树遍历的经典问题,主要考察对广度优先搜索和深度优先搜索的理解和应用。广度优先搜索:层次清晰,直接按照层次顺序处理节点,代码逻辑直观。深度优先搜索:通过递归实现,代码简洁,但需要额外记录深度信息。在实际应用中,广度优先搜索通常是解决层序遍历问题的首选方法,因为它天然适合按照层次顺序处理节点。而深度优先搜索则在其他类型的树遍历问题中更为常用。无论是哪种方法,掌握二叉树的遍历技巧对于解决树相关的算法问题都非常重要。

cannonjinx的博客 4510

LeetCode 107. Binary Tree Level Order Traversal II 树的BFS、DFS

Binary Tree Level Order Traversal II 题意 思路 代码 BFS DFS107. Binary Tree Level Order Traversal II Given a binary tree, return the bottom-up level order traversal of its nodes’ values. (ie, from left to

老夫编代码就是一把梭 852
上一篇: 102 - Binary Tree Level Order Traversal(DFS)
下一篇: 69 - Sqrt(x)
hellochenlu
博客等级 码龄14年 97粉丝 184原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值