网格点算法(在网格中查找点)

我正在寻找一种算法,如最接近的一对点算法

而不是所有点之间的任意距离,我有一个网格系统分别设置4个点,分别是右上角,右下角,左上角和左下角。 这可以保持所有点之间的距离不变。

比如说,如果我在这个网格上放置一个外部点,我需要通过找到最接近的4个点(给出网格平方的终点)来找到它将在的网格平方。

我将实现最近点的算法,但由于所有点的距离都相同,所以我不知道这是否值得使用不同的更有效的算法。

我并不需要对答案进行详细的解释,只是一个正确的方向。


我认为这是二维的? 很简单,你可以这么做 - 我使用了类似的技术来快速优化大规模数据挖掘项目中的空间聚类。

将坐标空间划分为X和Y方向上的固定数量的网格线(看起来您已经完成了这些工作,通过等分这4个点)。

插入一个点时,将其距离X和Y方向原点的距离(整数除法)除以网格步长间隔。 然后,您剩下两个坐标来标识最近的X / Y网格交点。 使用余数来确定你的点所属的网格交点的哪一侧。

如果你想变得非常复杂,你可以开始使用kD-Trees等等,但是我认为这个例子很简单,不足以保证任何更复杂的空间分区。

链接地址: http://www.djcxy.com/p/84939.html

上一篇: grid point algorithm (finding the point in grid)

下一篇: Finding all the points within a circle in 2D space