我有一个二维数组:
MyArray = array([6588252.24, 1933573.3, 212.79, 0, 0],
[6588253.79, 1933602.89, 212.66, 0, 0],
etc...)
前两个元素MyArray[0]
和MyArray[1]
是点的X和Y坐标。
对于数组中的每个元素,我想找到以X单位为半径返回其单个最近邻居的最快方法。我们假设这是在二维空间中。
让我们说这个例子X = 6
。
我通过将每个元素与其他元素进行比较来解决了这个问题,但是当您的列表长度为 22k 点时,这需要 15 分钟左右。我们希望最终在大约 3000 万个点的列表上运行它。
我已经阅读了 Kd 树并理解了基本概念,但在理解如何编写它们时遇到了麻烦。