总结二元搜索树中位于两个数字之间的所有数字所花费的时间

时间:2014-09-25 20:15:45

标签: algorithm search

假设我们有一个平衡的二叉搜索树T,其中包含n个数字。我们得到两个 数字L和H并且希望总结在L和H之间的T中的所有数字。假设 T中有这样的数字。有人可以解释如何计算计算总和所用时间的绝对值。?

1 个答案:

答案 0 :(得分:2)

我会告诉你详细说明,但这是一个开始。该算法将:

  1. 查找树中大于L的最小数字。你可以在日志时间做到这一点。
  2. 走树,每次移动到下一个最大的树,然后将其添加到正在运行的总数中。
  3. 当您达到至少H的数字时停止。
  4. 我认为“介于两者之间”意味着“严格地介于两者之间”,但你可能希望在第一步和第三步中存在微弱的不平等。