当前位置: 首页 > news >正文

【二叉树的广度优先遍历BFS---队列实现】

有一个问题:用两个数组也可以做,为什么要用队列呢?

BFS的遍历规则:(一层一层按顺序进行遍历)

1.先访问根节点

2.再访问第二层的节点从左到右依次

3.第三层...

核心:先遇到的节点先进行处理,和队列的特性(FIFO)十分匹配

实现思路:先让根节点入队,再取出队首出队进行处理,再把左右子节点入队 一次弹出进行处理

我们练习一下:

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

/** * 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), left(nullptr), right(nullptr) {} * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} * }; */ class Solution { public: vector<vector<int>> levelOrder(TreeNode* root) { if(root==nullptr)return {}; vector<vector<int>>ans; queue<TreeNode*>q; q.push(root); while(!q.empty()){ vector<int> vals; for(int n=q.size();n>0;n--){ auto node=q.front(); q.pop(); vals.push_back(node->val); if(node->left) q.push(node->left); if(node->right) q.push(node->right); } ans.push_back(move(vals)); } return ans; } };

http://www.jsqmd.com/news/1164953/

相关文章:

  • PIC18F86J11与PAM8904实现低功耗智能警报系统
  • 卡地亚中国官方售后服务中心|服务电话及详细网点地址权威信息公告(2026年7月最新) - 卡地亚官方售后中心
  • Claude Code不是IDE:它是可编程AI工作流系统
  • Python 3.7/3.9 多版本共存:3种 pip 精准安装方案对比与实战
  • Coding Plan不是任务清单,而是风险前置的决策日志
  • GPT-4o语音安全断层:鲁棒性塌方、意图失控与多模态错位
  • JDK 25 LTS工程化实践:路径、环境变量与四层验证
  • GitHub精准下载革命:如何用DownGit解决代码仓库的“过度下载“难题
  • 风箱说紫微能看哪些内容?事业、财运、感情、性格和阶段变化
  • 万国中国官方售后服务中心|详细维修地址与官方电话权威信息声明(2026年7月最新) - 万国中国官方服务中心
  • 2026最新天乙八字排盘怎么样?AI提示词、命盘保存和多盘复盘适合谁
  • Gemini API托管代理新功能解析:后台任务与MCP集成实战
  • Ultimate ASI Loader完整指南:为任何游戏开启插件无限可能
  • 从V5到V7的进化断层:20年计算机图形学专家手绘12张架构演进图,揭秘V7底层Diffusion Transformer重构细节
  • 湖南日报丨韶山:标准化管护为小型水库撑起防汛“安全伞”
  • 大模型到底是什么?从原理到应用的一次通俗梳理
  • 手撕ARM64启动栈(二):QEMU + TF-A(ATF) BL1 执行上下文——GDB 实测复位到 BL2
  • 2026年7月最新萧邦天津津南吾悦广场维修保养服务电话 - 萧邦中国官方服务中心
  • 首脑美发培训学校学费是多少钱
  • 连着三次都被大厂面试问到的java面试高频题,一分钟带你彻底搞懂
  • 2026年7月最新北京百达翡丽官方售后客户服务电话及线下网点地址 - 百达翡丽服务中心
  • 三星手机真实体验指南:按需求选机型,避开参数陷阱
  • 长沙理迅事务所处理案件周期受哪些因素影响? - 品牌排行榜
  • Ruflo:Claude的神经中枢与智能体蜂群操作系统
  • Cocos游戏事件总线性能优化实战:从卡顿到丝滑的完整方案
  • TDengine Tag 索引 — 子表筛选的核心机制
  • Steam创意工坊模组免费下载神器:WorkshopDL完整使用指南
  • 匿名聊天软件安全实测:网页端轻量级平台防护机制解析
  • A3908与PIC18LF46K22在精密运动控制系统中的应用
  • Kotlin Toolchain:KMP项目结构的声明式革命