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