2
让我们看看下面的图片 范围树构建
这就是所谓的范围树。我不明白一件事,它看起来类似于二叉搜索树,所以如果我们插入元素,我们可以使用与在二叉搜索树插入期间相同的过程。那么区别是什么呢?
我已阅读教程,并猜测它是一个kd树的查找,查询搜索树(如几何点搜索等),但如何构造它?像二叉搜索树一样,还是需要额外的参数?也许这样
struct range
{
int lowerbound;
int upperbound,
int element;
};
和插入过程中,我们必须检查
if(element>lowerbound && element <upperbound)
then insert node
请帮我正确理解如何构建一个范围树。
但是在开始的时候我有空树,我是否创建了新节点?我的意思是从开始位置 –
@AleksiBeriashvili在使用范围树解决的任务中,最初会给出一组用于构建树的时间间隔。因此,您实际上从n个节点开始不是空树。在初始构建之后,您只需更改节点的值,但不要添加/删除节点。 –
所以据我了解,我只是从初始时间间隔(如二分查找树)构造二叉树,然后只是更新值?确定更新操作搜索某些特定值类似于二进制搜索方法的权利? –