我正在尝试编写一个空间数据结构(例如 aK-D tree
或 a QuadTree
),给定一个点,它将找到x
最接近它的点。
我上面提到的数据结构的问题是它们主要支持径向/区域搜索。y
因此,他们将获得给定点/节点半径内的点。
改变这些结构来搜索我想要的东西是低效的。我假设我需要多次重复径向搜索,从较短的径向距离开始,并不断增加它,直到我获得x
接近给定点的所需点数。当然,这违背了数据结构背后的全部目的。
几乎所有的空间数据结构都在径向搜索上运行。我可以将哪些其他有效的搜索方法应用于 aQuadTree
或我需要考虑的任何其他空间数据结构以实现我的意思?有什么建议么?