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; // 返回该节点为根的子树的深度
    }
}
相关推荐
confiself13 小时前
树形思考研究进展
java·大数据·微服务
还是鼠鼠14 小时前
【Spring AI智能体实战 01】Java开发者接入大模型:国内平台、Token与API Key入门
java·大模型·spring ai·deepseek·阿里云百炼
zerozrc014 小时前
Java Lambda 底层实现
java
AlunYegeer14 小时前
Spring Boot 多模块服务间 API Token 鉴权排查记录
java·spring boot·后端
白白白小纯14 小时前
每日算法day3—回文链表,链表分割
c语言·数据结构·算法·leetcode
编程风暴14 小时前
3类人群的数据分析实习类型选择+4条选错红线
java·前端·数据分析
钱六两14 小时前
Spring AI 使用 MCP 客户端(调用高德 MCP)
java·人工智能·spring
城管不管14 小时前
RabbitMQ死信队列
java·分布式·ai·面试·职场和发展·rabbitmq·agent
long31614 小时前
Java 团队入门到精通学习资料
java·开发语言
vx-程序开发14 小时前
【java项目分享】springboot农产品销售平台14952
java·javascript·spring boot·python·eclipse·django·php