莫顿码是否是高维最有效的方法?

6
对于我当前的输入数据,这些数据是3D中的点,我正在使用Morton码来提高访问点列表时的缓存一致性。(Morton code) 我还有一些6D和7D的其他数据。对于这样的维度,Morton码仍然是一个好的技术吗?还是有其他技术可用?其他空间填充曲线技术比3D中的Morton本身更复杂,我想知道人们是否在6D / 7D或更高维度上使用另一种替代技术。
1个回答

7
你应该尝试使用行优先或行主索引。它们也保留空间局部性,但即使在更高的维度中,也可以计算得更有效率。
你可以在书籍《汇编语言艺术》第5章的211-216页中更详细地了解行主和列主索引(但含义较少与几何有关)。相关章节可在线获取,点击此处
还有一篇论文介绍了各种空间索引技术,包括上述两种方法:Samet, H. 2017. Sorting Spatial Data. The International Encyclopedia of Geography. 1–11. 希尔伯特和格雷索引在这里不是一个选择,因为它们计算速度比 Morton 更慢(大多数实现都包含隐式的 Morton 编码)。 基本上,合适的 Morton 实现(例如查找表或魔法数字),以及行主/列主索引是最快的。

@Bytemain 这个方案与哪个相比更好呢?比较需要两个对象。 - plasmacel
1
@Bytemain 给一个负评并不是解决你所面对的问题的最聪明方式。 - plasmacel
1
@Bytemain,我建议你撤销对我的其他问题的负评,因为你没有任何理由进行这样的操作,否则我将联系管理员。 - plasmacel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接