具有所有最深节点的最小子树
力扣链接:865. 具有所有最深节点的最小子树
 
 力扣链接:1123. 最深叶节点的最近公共祖先
 
题目描述
给定一个根为 root 的二叉树,每个节点的深度是 该节点到根的最短距离 。
返回包含原始树中所有 最深节点 的 最小子树 。
如果一个节点在 整个树 的任意节点之间具有最大的深度,则该节点是 最深的 。
一个节点的 子树 是该节点加上它的所有后代的集合。
示例

Java代码
class Solution {
    public TreeNode lcaDeepestLeaves(TreeNode root) {
        if(root != null){
            int ldep = maxDeep(root.left), rdep = maxDeep(root.right);
            if(ldep == rdep) return root;
            else if(ldep > rdep) return lcaDeepestLeaves(root.left);
            else if(rdep > ldep) return lcaDeepestLeaves(root.right);
        }
        return null;
    }
    public int maxDeep(TreeNode root) {
        if(root == null) { 
            return 0;
        }else {
            return Math.max(maxDeep(root.left), maxDeep(root.right)) + 1;
        }
    }
}
                














![[BSidesCF 2019]Futurella 1](https://img-blog.csdnimg.cn/ab61580a59134de9b0ac0625b7cdcee2.png)



