56得票7回答
将N维值映射到Hilbert曲线上的点

我有一个由数千万个N维点组成的大型数据集(N接近100)。 我需要将这些点映射到单个维度,同时保留空间局部性。我想使用希尔伯特填充曲线来实现。 对于每个点,我想选择曲线上最接近它的点。该点的希尔伯特值(从曲线起点到选择点的曲线长度)是我要寻求的单个维度值。 计算不必即时完成,但我期望在普...

22得票3回答
分治算法实现的希尔伯特排序?

我正在尝试按照希尔伯特顺序对d维数据向量进行排序,以便为空间索引进行批量加载。 但是,我不想显式计算每个点的希尔伯特值,这需要设置特定的精度。在高维数据中,这涉及到像32*d位这样的精度,这样做效率会变得非常混乱。当数据不均匀分布时,一些计算是不必要的,部分数据集需要额外的精度。 相反,我...

20得票3回答
用Python生成3D Hilbert空间填充曲线的算法

我想将 RGB 颜色立方体中的点映射到 Python 中的一维列表中,并使颜色列表看起来好看和连续。我认为使用三维 Hilbert 空间填充曲线是一个不错的方法,但我搜索过后并没有找到针对这个问题的特别有用的资源。特别是在维基百科上,只提供了用于生成二维曲线的示例代码。

18得票3回答
实现互联网的希尔伯特地图

在XKCD漫画195中,提出了一种使用希尔伯特曲线设计互联网地址空间地图的建议,以便来自相似IP地址的项目能够聚集在一起。 给定一个IP地址,我该如何计算它在这样一张地图上的二维坐标(范围为零到一)?

9得票2回答
将 Hilbert 值映射到 3D 点

我有一组希尔伯特值 (从希尔伯特曲线的起点到给定点的长度)。 如何将这些值转换为3D点?原始的希尔伯特曲线不是3D的,所以我想我必须自己选择需要的希尔伯特曲线等级。不过我确实拥有整个曲线的长度(也就是该集合中的最大值)。 也许已经有现成的实现了?有没有一些库可以让我使用希尔伯特曲线/值?语...

8得票4回答
什么是查找包含特定点的最小范围的最有效算法/数据结构?

给定一个包含数百万个价格范围的数据集,我们需要找到包含给定价格的最小范围。 以下规则适用: 范围可以完全嵌套(即1-10和5-10是有效的) 范围不能部分嵌套(即1-10和5-15是无效的) 例如: 给定以下价格范围: 1-100 50-100 100-120 5-10 5-20 ...