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

leetcode543-二叉树的直径

leetcode 543
在这里插入图片描述

思路

  1. 路径长度计算:任意两个节点之间的路径长度,等于它们的最低公共祖先到它们各自的深度之和
  2. 递归遍历:通过后序遍历(左右根)计算每个节点的左右子树深度,并更新全局最大直径
  3. 深度与直径的关系:节点的深度是其左右子树深度的最大值加 1,而直径是左右子树深度之和

实现

const diameterOfBinaryTree = function (root) {let maxDepth = 0 // 全局最大直径// 递归计算每个节点的深度,并更新最大直径const deep = (root) => {if (!root) return 0; // 空节点深度为0// 计算左子树深度const leftLen = deep(root.left);// 计算右子树深度const rightLen = deep(root.right);// 当前节点的直径(经过该节点的最长路径)const curLen = leftLen + rightLen;// 更新全局最大直径maxDepth = Math.max(curLen, maxDepth);// 返回当前节点的深度(用于父节点计算)return Math.max(leftLen, rightLen) + 1}deep(root)return maxDepth;
}
http://www.dtcms.com/a/257768.html

相关文章:

  • 融合LSTM与自注意力机制的多步光伏功率预测新模型解析
  • leetcode:98. 验证二叉搜索树
  • Vue按键事件
  • Mysql常见的SQL语句格式
  • 华为HN8145V光猫改华为蓝色公版界面,三网通用,xgpon公版光猫
  • Modbus TCP转Profibus DP网关与JF - 600MT称重变送器在STEP 7快速配置
  • 网络安全之某cms的漏洞分析
  • Pytorch Lightning 进阶 1 - 梯度检查点(Gradient Checkpointing)
  • MySQL8:jdbc插入数据后获取自增ID
  • 实现Markdown文本转html并使用html2canvas导出图片
  • 可信计算的基石:TPM技术深度解析与应用实践
  • 图像融合中损失函数【1】--像素级别损失
  • 如何快速判断Excel文档是否被修改过?Excel多版本比对解决方案
  • 新能源知识库(65)逆变器和PCS的专用散热风扇介绍
  • Java学习第一周
  • Hum Brain Mapp.:从深度学习模型回归大脑:揭示区域预测因子及其与衰老的关系
  • QT6(46)5.2 QStringListModel 和 QListView :列表的模型与视图的界面搭建与源代码实现
  • Gartner《Generative AI Use - Case Comparison for Legal Departments》
  • python基于微信小程序的广西文化传承系统
  • 智慧水利新引擎,数字孪生流域解决方案
  • 生成式AI与智能体改写互联网、IT与工业经济格局
  • 深度学习:PyTorch卷积神经网络(CNN)之图像入门
  • 【Leetcode】有效的括号、用栈实现队列、用队列实现栈
  • 成都芯谷金融中心文化科技产业园:构建文化科技产业融合新标杆
  • MySQL 8.x配置MGR高可用+ProxySQL读写分离(二):ProxySQL配置MySQL代理及读写分离
  • 【GoLang】3、基于虚拟头尾节点快速实现双向链表
  • 计算Transformer的Flops
  • 从 0 到 1 打造社区产品:短说社区助力开启社交新篇
  • Java编程中的设计模式:单例模式的深度剖析
  • 深度解析 Caffeine:高性能 Java 缓存库