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

力扣HOT100之二叉树:104. 二叉树的最大深度


这道题没啥好说的,就是简单的层序遍历,用一个二维向量存储整个二叉树的元素,二维向量中的每一个一维向量分别存储每一层的元素,我们用一个二重while循环来实现元素的添加,外层的while循环来控制添加一维向量,每循环一次就将一层的元素添加到向量中,而内层while循环则将一层的所有元素都添加到一个临时的一维向量中,内层循环结束后再及时将这个临时向量添加到二维向量中。
下面是代码。

/*** 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:int maxDepth(TreeNode* root) {//这道题用层序遍历,用一个二维向量来存储二叉树的值//所以二维向量中的每一个一维向量存储的是一层的元素//我们只需要统计出二维向量中有多少个一维向量即可vector<vector<int>> result;queue<TreeNode*> My_Queue;if(root) My_Queue.push(root);   //若树不为空才加入队列while(!My_Queue.empty()){vector<int> temp;int size = My_Queue.size();while(size > 0){TreeNode* node = My_Queue.front();My_Queue.pop();size--;temp.emplace_back(node -> val);if(node -> left) My_Queue.push(node -> left);if(node -> right) My_Queue.push(node -> right);}result.emplace_back(temp);}return result.size();}
};

相关文章:

  • 力扣-138.随机链表的复制
  • Aware和InitializingBean接口以及@Autowired注解失效分析
  • linux-驱动开发之设备树详解(RK平台为例)
  • 《Python星球日记》 第58天:Transformer 与 BERT
  • 快解析为TPDDNS用户提供免费替换服务
  • 2025年SDK游戏盾技术深度解析:AI赋能下的DDoS/CC攻击防御革命
  • 《Effective Python》第1章 Pythonic 思维详解——深入理解流程控制中的解构利器match
  • Baumer工业相机堡盟工业相机在使用光源时如何选择蓝光还是红光
  • Lynx-字节跳动跨平台框架多端兼容Android, iOS, Web 原生渲染
  • 力扣210(拓扑排序)
  • VLM-RL:用于安全自动驾驶的统一视觉语言模型和强化学习框架——论文阅读
  • 互联网大厂Java求职面试:优惠券服务架构设计与AI增强实践-3
  • DVWA在线靶场-xss部分
  • DeepSeek-R1-Distill-Qwen-1.5B代表什么含义?
  • 26考研|数学分析:函数列与函数项级数
  • 对接马来西亚股票数据API接口文档
  • 如何使用Selenium?
  • Linux操作系统从入门到实战(六)Linux开发工具(上)详细介绍什么是软件包管理器,Linux下如何进行软件和软件包的安装、升级与卸载
  • 前端上传el-upload、原生input本地文件pdf格式(纯前端预览本地文件不走后端接口)
  • C++ 状态模式详解
  • 外媒:初步结果显示,菲律宾前总统杜特尔特当选达沃市市长
  • 超新星|罚丢点球的那道坎,刘诚宇靠自己迈了过去
  • 《单身情歌》制作人韩贤光去世,林志炫发文悼念
  • 重庆一高校75万采购市价299元产品?工作人员:正在处理
  • 王毅同巴基斯坦副总理兼外长达尔通电话
  • “科创板八条”后百单产业并购发布,披露交易金额超247亿