我正在寻找能够将有限但大量的3维位置(约10 ^ 11)映射到索引的算法(所以映射ℝ³ - >ℕ)
我知道制作一个ℕ - >是可能的,也是相当简单的。 ℝ³映射,这基本上是我想要做的,但是ℕ - > ℝ³是一种不切实际的方法,可以确定哪些指数在某个位置附近,
理想情况下,我还要确保我的有限子集ℕ不包含重复项。
关于如何实现这一点的一些背景知识,以便更好地了解这个问题的一些天真解决方案的约束和问题:
我正在尝试一种方法将星系中的恒星映射到一个唯一的ID,然后我可以将其用作随机数生成器的“种子”,ℕ - > ℝ³映射需要我迭代所有的ℕ来找到在给定位置附近的ℝ³的值,这显然不是一个实用的方法
我已经找到了一些关于cantor配对功能和鸠尾榫的信息,但是那些引起了问题,因为那些主要适用于ℕⁿ而不是ℝⁿ。
我无法保证我的ℝ³值遵循网格,如果他们确实可以映射ℝ³-> ℕ³通过弄清楚该值所在的“框”,然后使用cantor的配对函数来确定哪个ℕ属于该框,但在我的情况下,框可能包含多个值,或者没有。
提前感谢您提供任何帮助