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

LeetCode[102]二叉树的层序遍历

思路:

题目描述从左到右一层一层的进行遍历,就遍历二叉树的这种题我更喜欢用递归来做,

我使用java来做的,结果集是两个List集合,那么我们是不是应该每到新的一层就给这个结果集添加一个内部的List,那么怎么判断左右节点在同一层级呢?我想的就是模拟一个层级的参数为k,root的左右节点都属于一个层级,那么递归的时候对应的就是k+1;以此类推,拿到结果。

代码:

/*** Definition for a binary tree node.* public class TreeNode {*     int val;*     TreeNode left;*     TreeNode right;*     TreeNode() {}*     TreeNode(int val) { this.val = val; }*     TreeNode(int val, TreeNode left, TreeNode right) {*         this.val = val;*         this.left = left;*         this.right = right;*     }* }*/
class Solution {List<List<Integer>> res = new ArrayList<>();public List<List<Integer>> levelOrder(TreeNode root) {level(root, 0);return res;}public void level(TreeNode root, int k) {if (root == null)return;if (k == res.size())res.add(new ArrayList<>());res.get(k).add(root.val);level(root.left, k + 1);level(root.right, k + 1);}
}

 

http://www.xdnf.cn/news/3554.html

相关文章:

  • 走进AI的奇妙世界:探索历史、革命与未来机遇
  • Mybatis中的一级二级缓存扫盲
  • 如何使用模块
  • [FPGA Video] AXI4-Stream Remapper
  • vue3+ts项目 配置vue-router
  • TS 安装
  • 仿腾讯会议——注册登录实现
  • AI算法可视化:如何用Matplotlib与Seaborn解释模型?
  • Bootstrap(自助法)​​:无需假设分布的统计推断工具
  • 「Mac畅玩AIGC与多模态13」开发篇09 - 基于多插件协同开发智能体应用(天气+名言查询助手)
  • DeepSeek实战--各版本对比
  • 【AI科技】AMD ROCm 6.4 新功能:突破性推理、即插即用容器和模块化部署,可在 AMD Instinct GPU 上实现可扩展 AI
  • [原创](现代Delphi 12指南):[macOS 64bit App开发]: [2]如何使用跨平台消息框?
  • 低代码/AI是否会取代前端开发?
  • C++之类和对象基础
  • 开启 Spring AI 之旅:从入门到实战
  • 【c++】【STL】priority_queue详解
  • 网络原理 - 13(HTTP/HTTPS - 4 - HTTPS)
  • 敏感词 v0.25.0 新特性之 wordCheck 策略支持用户自定义
  • Linux52 运行百度网盘 解决故障无法访问repo nosandbox 未解决:疑似libstdc++版本低导致无法运行baidu网盘
  • 兰亭妙微分享:B 端设计如何实现体验跃迁
  • [吾爱出品] 网文提取精灵_4.0
  • 2.4 GHz频段的11个信道通过 5 MHz中心频率间隔 实现覆盖
  • 开闭原则(OCP)
  • Qt/C++开发监控GB28181系统/云台控制/获取预置位信息/添加删除调用预置位
  • 为美好的XCPC献上典题 ABC359 G - Sum of Tree Distance(根号分治)
  • JVM性能调优的基础知识 | JVM内部优化与运行时优化
  • 3033. 修改矩阵
  • 2025年- H19-Lc127-48.旋转矩阵(矩阵)---java版
  • Rust 学习笔记:关于枚举与模式匹配的练习题