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; // 返回该节点为根的子树的深度
    }
}
相关推荐
迦蓝叶2 分钟前
JDBC元数据深度实战:企业级数据资源目录系统构建指南
java·jdbc·企业级·数据资源·数据血缘·数据元管理·构建指南
chilavert3182 分钟前
技术演进中的开发沉思-327 JVM:内存区域与溢出异常(下)
java·jvm
冲刺逆向2 分钟前
【js逆向案例六】创宇盾(加速乐)通杀模版
java·前端·javascript
POLITE33 分钟前
Leetcode 146. LRU 缓存 (Day 13)
算法·leetcode·缓存
洛阳纸贵6 分钟前
JAVA高级工程师-消息中间件RabbitMQ工作模式(二)
java·rabbitmq·java-rabbitmq
沛沛老爹9 分钟前
Web开发者转型AI安全核心:Agent Skills沙盒环境与威胁缓解实战
java·前端·人工智能·安全·rag·web转型升级
像少年啦飞驰点、11 分钟前
Java大厂面试真题:Spring Boot + Kafka + Redis 在电商场景下的实战应用
java·spring boot·redis·分布式·kafka·面试题·电商秒杀
小李广13 分钟前
修改MS源码—开发新接口:查询所有项目下面的模块
java·linux·服务器
CHrisFC14 分钟前
环境第三方检测机构LIMS系统选型:从合规基础到效率制胜
java·大数据·人工智能
么么...14 分钟前
布隆过滤器详解:原理、实现与应用
java·数据结构·哈希算法·散列表