注意:在我的回答中已经重提了这个问题:假设现在我们可以找到时间中最低的同级祖先,那么可以在真正执行ANN 吗?
四叉树是有效的空间索引。我对[2]中所述的压缩四叉树结构中最近邻居搜索的实现感到困惑。(不赘述,搜索将沿着所谓的等距正方形自上而下进行,以等距路径的尾节点结束。在所附的图像中,该搜索可能是东南部充满点的任何节点。)
为使算法有效,必须为每个节点(一个至少包含两个非空象限的正方形)维护一个指针,该指针指向四个方向(北,西,南)中每个最低(祖先最靠近)的祖先节点, 东)。这些由节点向西的祖先的绿色箭头指示(箭头指向祖先广场的中心)。
本文声称这些指针可以在点插入和删除期间在O(1)中更新。但是,当查看绿点的插入时,似乎我需要更新任意数量的指针,在这种情况下,其中六个。
我希望有一个技巧可以在恒定时间内更新此指针。也许存在一种可以利用的间接形式?
编辑:
本文的相关部分为6.3,其中的内容为:“如果路径具有弯曲,则除了的最低祖先,我们还应该考虑方向中的每个最低祖先的该伴随朝向该方向[...]查找从这些正方形可在完成每平方的时间,如果我们关联附加指针在每个正方形指向其最接近的祖先为每个方向在插入或删除点的过程中,也可以在时间内更新这些指针。”2 d q q O (1 )2 d Q 0 O (1 )
[2]:Eppstein,D.和Goodrich,MT和Sun,JZ,“跳过四叉树:多维数据的简单动态数据结构”,在“计算几何学”第二十一届年度研讨会论文集中,第296-305页。 ,2005年。