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; // 返回该节点为根的子树的深度
    }
}
相关推荐
源代码•宸8 分钟前
Leetcode—1123. 最深叶节点的最近公共祖先【中等】
经验分享·算法·leetcode·职场和发展·golang·dfs
yyy(十一月限定版)9 分钟前
c++(3)类和对象(中)
java·开发语言·c++
alphaTao16 分钟前
LeetCode 每日一题 2026/1/5-2026/1/11
算法·leetcode
IT 行者22 分钟前
Spring Security 7 OAuth2 Token 格式选择浅析
java·后端·spring
shughui26 分钟前
最新版IntelliJ IDEA下载+安装+汉化(详细图文)
java·ide·intellij-idea
小罗和阿泽29 分钟前
java 【多线程基础 三】
java·开发语言
想你依然心痛31 分钟前
从x86到ARM的HPC之旅:鲲鹏开发工具链(编译器+数学库+MPI)上手与实战
java·开发语言·arm开发·鲲鹏·昇腾
黎雁·泠崖31 分钟前
二叉树知识体系全梳理:从基础到进阶一站式通关
c语言·数据结构·leetcode
我的golang之路果然有问题34 分钟前
积累的 java 找工作资源
java·笔记