java - 计算二叉搜索树的深度?

标签 java recursion depth binary-search-tree

我很难计算给定 BST 的深度总和 [根的所有子代的各个深度的总和]。我有树的节点总数,并且我正在尝试计算树的平均深度,需要我有这个深度总和。

递归和我相处得不太好..我发现这个问题非常困难。如果可能的话,我希望看到一个递归解决方案。

注意:

我创建了访问器 Node.getLeft() 和 Node.getRight()

最佳答案

您只需要在遍历树时保留一个深度计数器(如果需要,请查找树遍历),并在每次到达节点时添加计数器的值。然后除以节点数。

这看起来像是家庭作业,因此我不提供更详细的解决方案。

关于java - 计算二叉搜索树的深度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1876464/

相关文章:

opengl - 从帧缓冲纹理渲染深度

java - 理解这个递归函数

python-3.x - 递归地从 N 中选择 K 个项目,直到为空

使用 Hibernate 扩展和 T 的 Java 通用类型

java - 如何在 JavaFX 中监听 Stage 的 resize 事件?

python - 在python中将节点插入树中

javascript - 指定元素的深度

dictionary - 从 Google 街景中提取深度图

java - 我们可以忽略 json 解析中的一行吗?

java - 对于已排序的 200 万元素数组,Arrays.sort(...) 的效率如何