Leetcode 865. Smallest Subtree with all the Deepest Nodes
Posted bloomingFlower
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Leetcode 865. Smallest Subtree with all the Deepest Nodes相关的知识,希望对你有一定的参考价值。
这道题的关键在于知道每个节点的深度,可以用哈希表保存的前提下,怎么找出公共最小的父节点。方法是,如果当前node左右节点都有深度最大节点,返回当前node,如果只有左边有,返回node的左节点,反之返回右节点。也就是以下的java代码
public TreeNode answer(TreeNode node) {
if (node == null || depth.get(node) == max_depth)
return node;
TreeNode L = answer(node.left),
R = answer(node.right);
if (L != null && R != null) return node;
if (L != null) return L;
if (R != null) return R;
return null;
}
以上是关于Leetcode 865. Smallest Subtree with all the Deepest Nodes的主要内容,如果未能解决你的问题,请参考以下文章
865. Smallest Subtree with all the Deepest Nodes
LeetCode 483. Smallest Good Base
908. Smallest Range I - LeetCode
Leetcode 230. Kth Smallest Element in a BST