存储最近的邻居
问题描述:
有算法在那里找到k
最近的邻居在许多方面。我最终将不得不应用这些,但在我的情况下,我可以编写我的程序逐个添加点,而不是完全添加所有点,然后运行算法。这是否使问题更容易,以便我可以使用树,并将每个节点添加到邻居树什么的。这看起来好像比线性搜索所有点要快。存储最近的邻居
并且在我的程序中点将不断移动,因此我将被要求更新邻居,这就是为什么我认为使用树或其他构造来更新记录更好,而不是在每次移动时计算最近邻居这些点。你知道这样的数据结构吗?
答
由于结构的相似性,图表数据结构/数据库可能是最合适的。 例如:https://neo4j.com/graphgist/a7c915c8-a3d6-43b9-8127-1836fecc6e2f(我不适用于neo4j)
_“点将不断移动”_ - 那么它是什么时候它是一个邻居,什么时候它接近?这听起来像与您的“这使问题更容易”相矛盾。但除此之外,请考虑Max Heap。 –
这可能是相关的:http://stackoverflow.com/q/4274218/238978 –