【发布时间】:2010-12-24 23:46:14
【问题描述】:
我在计算给定 BST 的深度总和 [根的所有子节点的单个深度的总和] 时遇到困难。我有树的节点总数,我正在尝试计算树的平均深度,需要我有这个深度总和。
递归和我相处得不是很好。我发现这个问题非常困难。如果可能的话,我希望看到一个递归解决方案。
注意:
我已经创建了访问器 Node.getLeft() 和 Node.getRight()
【问题讨论】:
-
这听起来很像家庭作业。到目前为止你写了什么?除了你与递归“相处得不好”之外,你在哪里卡住了? SO 用户不是在这里为您写出完整的解决方案。
-
像这样的树问题除了递归之外真的无法解决。其他解决方案往往更复杂、更难阅读、更难维护。
-
@dribeas 我不认为你可以,因为它只是一些任意的 BST。你如何扎根树最终将决定平均值是多少。
-
从长远来看,将作业问题外包给 StackOverflow 并不会节省任何时间。
-
仅作记录,我相信这可以在 Haskell 的一行中解决:D
标签: java recursion depth binary-search-tree