BST搜索问题

时间:2016-06-12 18:52:37

标签: oop binary-search-tree

我已经实现了一个BST,它在n个节点中包含Point(x,y)类型的对象,树中的顺序是根据X的值。

我需要实现一个函数,将X的范围作为输入(x left,x right) 而输出是 (编辑):范围(包括)中Y坐标的总和。

通过“遍历”所有节点并不难做到这一点,问题是我在O(logn)复杂性中执行它。

我考虑过初始化范围的字段和Y的总和,但不知何故它不能用插入和删除功能。 有任何想法吗?

1 个答案:

答案 0 :(得分:0)

查找范围的每一端都是O(log n)复杂度。无需查看树中的所有节点。

如果需要对范围的数字求和,则取高边界减去低边界(假设连续的线性范围)是一个恒定时间操作。