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

力扣 hot100 Day42

102. 二叉树的层序遍历

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

//抄的
class Solution {
public:vector<vector<int>> levelOrder(TreeNode* root) {vector<vector<int>> result;if (!root) return result;queue<TreeNode*> q;q.push(root);while (!q.empty()) {int levelSize = q.size();vector<int> currentLevel;        for (int i = 0; i < levelSize; ++i) {TreeNode* node = q.front();q.pop();currentLevel.push_back(node->val);if (node->left) q.push(node->left);if (node->right) q.push(node->right);}        result.push_back(currentLevel);}    return result;}
};

BFS,广度优先搜索,基本都是基于队列实现

逻辑很简单,队列里存放根节点,每出来一个根节点,就把根节点的左右节点push进去,先进先出,这样就实现了层序遍历

当然里面还有一些逻辑细节,需要维护一个levelsize记录每一层个数,用队列size循环记录即可,还需要记录每一层pop的vector,在一层遍历完push进result。

http://www.lryc.cn/news/586040.html

相关文章:

  • 精密模具大深径比微孔尺寸检测方案 —— 激光频率梳 3D 轮廓检测
  • 【STM32实践篇】:最小系统组成
  • AI软件出海SEO教程
  • Ubuntu快速搭建QT开发环境指南,5000字解析!!
  • 鸿蒙的NDK开发初级入门篇
  • 附件1.2025年世界职业院校技能大赛赛道简介
  • 分音塔科技(BABEL Technology) 的公司背景、股权构成、产品类型及技术能力的全方位解读
  • 2025 年 4-6 月大模型备案情况分析
  • Ansible 高版本 SELinux 模块深度解析:内置接口原理与实战指南
  • 迷宫可达性统计问题详解
  • 啤酒自动装箱机构设计cad【10张】+三维图+设计说明书
  • Linux操作系统之进程间通信:共享内存
  • Javaweb- 11 MVC架构模式
  • Redis渗透思路总结
  • Python 三大高频标准库实战指南——json · datetime · random 深度解析
  • FastGPT革命:下一代语言模型的极速进化
  • 淘宝商品评论API接口操作详解
  • MCP选型指南:AWS vs Azure vs GCP vs 国内云厂商深度对比
  • 基于 Python 的数据分析技术综述
  • 自动化运维工具jenkins问题
  • 集成语音感知与云平台的多任务智能楼宇控制系统
  • 详解缓存淘汰策略:LRU
  • Go语言生态成熟度分析:为何Go还无法像Java那样实现注解式框架?
  • Markdown语法的基础学习
  • 管理端口: 一个简单的锤子架子
  • Linux->基础IO
  • 【深度学习】 1 Deep Learning
  • 【Elasticsearch】昂贵算法与廉价算法
  • 四、深度学习——CNN
  • 【SpringAI】7. 基于 milvus 的向量检索