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

leetcode hot100刷题日记——14.二叉树的最大深度

在这里插入图片描述
在这里插入图片描述
解答:

/*** 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) {//方法一:深度优先遍历,时间复杂度:O(n),其中 n 为二叉树节点的个数。每个节点在递归中只被遍历一次。//空间复杂度为O(height),等价于二叉树的高度// if(root==nullptr){//         return 0;// }    // return max(maxDepth(root->left),maxDepth(root->right))+1;//方法二:广度优先遍历//存放当前层的所有节点,用队列(先进先出)//每次遍历完一层,依次弹出队列中的节点继续拓展//时间复杂度O(n)//空间复杂度最坏是O(n)if(root==nullptr){return 0;}queue<TreeNode*>Q;Q.push(root);int depth=0;while(!Q.empty()){int Qsize=Q.size();while(Qsize>0){TreeNode *q=Q.front();Q.pop();if(q->left!=nullptr){Q.push(q->left);}if(q->right!=nullptr){Q.push(q->right);}Qsize--;}depth++;}return depth;}
};
http://www.dtcms.com/a/211187.html

相关文章:

  • CAU人工智能class5 激活函数
  • IPD推行成功的核心要素(十二)CDP确保产品开发的正确方向
  • XOR符号
  • UE5 图片导入,拖到UI上变色
  • 在Visual Studio中进行cuda编程
  • Axure元件动作六:设置图片
  • 滚珠导轨在航空航天领域具体应用是什么?
  • 使用腾讯云3台轻量云服务器快速部署K8s集群实战
  • 独立机构软件第三方检测:流程、需求分析及电商软件检验要点?
  • RAID技术全解析:从基础到实战应用指南
  • 信息安全管理与评估2025上海卷
  • 关于vector、queue、list哪边是front、哪边是back,增加、删除元素操作
  • C++八股 —— 手撕shared_ptr
  • 事务处理与事务隔离
  • 哈希表原理与双散列实战指南
  • HJ14 字符串排序【牛客网】
  • Global Securities Markets第一章知识点总结
  • 【Docker 新手入门指南】第十章:Dockerfile
  • http协议和session会话
  • 恢复二叉搜索树:递归与中序遍历的智慧应用
  • 汇编语言的子程序魔法:解锁四则运算的奥秘
  • AtCoder Beginner Contest 407(ABCDE)
  • 机器学习模型度量指标(混淆矩阵、准确率、精确率、召回率、F1分数、ROC曲线、AUC、平均精度均值)
  • (泛函分析)压缩映射
  • 线性回归原理推导与应用(七):逻辑回归原理与公式推导
  • [yolov11改进系列]使用轻量级骨干网络MobileNetV4替换backbone的python源码+训练源码+改进流程+改进原理
  • S32K3开发问题-ADC采样电压一直为5V原因分析及处理
  • 探索链表的奇妙世界:从基础到高级应用
  • RIP 协议实验全记录:从配置到问题解决
  • Linux常见指令合集+知识点