Java | Leetcode Java题解之第543题二叉树的直径

题目:

题解:

java 复制代码
class Solution {
    int ans;
    public int diameterOfBinaryTree(TreeNode root) {
        ans = 1;
        depth(root);
        return ans - 1;
    }
    public int depth(TreeNode node) {
        if (node == null) {
            return 0; // 访问到空节点了,返回0
        }
        int L = depth(node.left); // 左儿子为根的子树的深度
        int R = depth(node.right); // 右儿子为根的子树的深度
        ans = Math.max(ans, L+R+1); // 计算d_node即L+R+1 并更新ans
        return Math.max(L, R) + 1; // 返回该节点为根的子树的深度
    }
}
相关推荐
itjinyin11 小时前
ShardingSphere-jdbc 5.5.0 + spring boot 基础配置 - 实战篇
java·spring boot·后端
丶小鱼丶11 小时前
Java虚拟机【JVM】
java·jvm
csdn2015_11 小时前
IDEA配置Continue
java·ide·intellij-idea
aq553560012 小时前
C语言、C++和C#:三大编程语言核心差异详解
java·开发语言·jvm
老马952712 小时前
opencode4-在已有项目中增加修改功能
java·后端·ai编程
Moe48812 小时前
Spring AI:结构化输出
java·后端·面试
sthnyph13 小时前
TypeScript 与后端开发Node.js
java
逻辑驱动的ken13 小时前
Java高频面试考点场景题08
java·开发语言·面试·求职招聘·春招
不恋水的雨13 小时前
手动调用spring的@Validated校验
java·spring
xxjj998a13 小时前
【Spring】Spring MVC案例
java·spring·mvc