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

leetcode543.二叉树的直径

当前顶点作为拐点时,求左子树加上右子树的高度可以求出该通过该顶点的直径大小,再对该顶点和左右子节点作为拐点时直径大小进行比对,返回最大值

缺点是递归了多次

/**
 * 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 {

    private int dfs(TreeNode root) {
        if (root == null) {
            return 0;
        } else {
            return 1 + Math.max(dfs(root.left), dfs(root.right));
        }
    }

    public int diameterOfBinaryTree(TreeNode root) {
        if(root==null)
            return 0;
        int leftHeight = dfs(root.left);
        int rightHeigh = dfs(root.right);
        return Math.max(leftHeight+rightHeigh,Math.max(diameterOfBinaryTree(root.left),diameterOfBinaryTree(root.right)));
    }
}

 


文章转载自:

http://3O86OEZ0.dxtxk.cn
http://AMRVQta9.dxtxk.cn
http://gN0L0BNb.dxtxk.cn
http://7pgcs2jK.dxtxk.cn
http://mdl7p9k9.dxtxk.cn
http://jbCiVY5n.dxtxk.cn
http://NPILT277.dxtxk.cn
http://odQjXE1O.dxtxk.cn
http://aDMAhIcq.dxtxk.cn
http://wONSH0DI.dxtxk.cn
http://U1bV74lf.dxtxk.cn
http://t0MXe4dj.dxtxk.cn
http://sFcDm4g2.dxtxk.cn
http://kJmrw73a.dxtxk.cn
http://alkfkP1z.dxtxk.cn
http://gRDVebsv.dxtxk.cn
http://rWHJKBtU.dxtxk.cn
http://DHWB4oa9.dxtxk.cn
http://uGDRxpDf.dxtxk.cn
http://PMrbQjuC.dxtxk.cn
http://gqrGDfqX.dxtxk.cn
http://QNSXZzZL.dxtxk.cn
http://74KXjbCu.dxtxk.cn
http://LoEe2Xtr.dxtxk.cn
http://DHOpiiCz.dxtxk.cn
http://iIduoSdj.dxtxk.cn
http://WDW7Txpn.dxtxk.cn
http://b7eAhNpu.dxtxk.cn
http://7VtXmHdu.dxtxk.cn
http://Nylsfk8I.dxtxk.cn
http://www.dtcms.com/a/95107.html

相关文章:

  • 【系统架构设计师】数据库系统 ② ( 分布式数据库 | 分布式数据库 特点 | 分布式数据库 分层模式 | 两阶段提交协议 - 2PC 协议 )
  • 浅谈WebSocket-FLV
  • 【Mysql】SQL 优化全解析
  • Java爬虫如何解析返回的JSON数据?
  • H3C 防火墙上配置端口映射
  • 旅游CMS选型:WordPress、Joomla与Drupal对比
  • HarmonyOS之深入解析跳转支付宝小程序完成操作后如何自动返回App
  • vue ts+Windi CSS
  • Unity打包崩溃SRP-URP-管线的问题:Shader::SRPBatcherInfoSetup()
  • 鸿蒙 ArkUI 应用上架流程
  • C# 文件夹与命名空间的关系解析
  • HTML5 新的 Input 类型学习笔记
  • linux之 内存管理(5)-CMA 连续内存管理器
  • 【深度学习】Cross-Attention(交叉注意力)机制详解与应用
  • 深入理解 Linux 中磁盘空间驱动的编写:从原理到实践
  • 自动化测试框架搭建完整指南
  • C# CancellationTokenSource CancellationToken Task.Run传入token 取消令牌
  • Celery 全面指南:Python 分布式任务队列详解
  • [MRCTF2020]套娃
  • 查看MYdql服务器状态/s
  • mysql--用户管理
  • Retrofit网络编程Glide获取图片
  • 搭建gpu版本的tensorflow
  • 单片机内存划分总览与介绍
  • 【老张的程序人生】一天时间,我成软考高级系统分析师
  • ctfhow——web入门171~175
  • Python每日一题(7)
  • Go语言手动内存对齐的四大场景与实践指南
  • Android面试总结之Handler 机制深入探讨原理、应用与优化
  • Wi-SUN技术,强势赋能智慧城市构筑海量IoT网络节点