计算机科学 > 计算几何
[提交于 2025年8月24日
]
标题: 实用的仅插入凸包
标题: Practical Insertion-Only Convex Hull
摘要: 凸包数据结构在计算几何中是基础性的。 我们研究仅插入的数据结构,支持各种包含和交集查询。 当$P$按$x$- 或$y$-坐标排序时,可以使用经典的算法如 Graham扫描在线性时间内构造凸包。 我们研究了针对仅插入设置的各种方法。 我们探讨了涉及鲁棒性、内存访问模式和空间使用的广泛权衡,提供了对现有和新方法的全面评估。 对数时间方法依赖于基于指针的树结构,由于内存局部性差,在实际中表现不佳。 受此启发,我们开发了一种受Overmars的对数方法启发的基于向量的解决方案。 我们的结构具有更差的渐近界,支持查询在$O(\log^2 n)$时间内完成,但将数据存储在$O(\log n)$连续向量中,大大提高了缓存性能。 通过在真实世界和合成数据集上的实证评估,我们发现了令人惊讶的趋势。 令$h$表示凸包的大小。 我们表明,基于Graham扫描的朴素$O(h)$仅插入算法在现实工作负载下始终优于理论和实际的最先进方法,即使在凸包相当大的数据集上也是如此。 虽然基于树的方法具有$O(\log h)$更新时间,提供了坚实的理论保证,但在实践中从不是最优的。 相反,我们的基于向量的对数方法,尽管其理论上的边界较差,但在所有测试场景中都表现出色。 当凸包变大时,它是最优的。
文献和引用工具
与本文相关的代码,数据和媒体
alphaXiv (什么是 alphaXiv?)
CatalyzeX 代码查找器 (什么是 CatalyzeX?)
DagsHub (什么是 DagsHub?)
Gotit.pub (什么是 GotitPub?)
Hugging Face (什么是 Huggingface?)
带有代码的论文 (什么是带有代码的论文?)
ScienceCast (什么是 ScienceCast?)
演示
推荐器和搜索工具
arXivLabs:与社区合作伙伴的实验项目
arXivLabs 是一个框架,允许合作伙伴直接在我们的网站上开发和分享新的 arXiv 特性。
与 arXivLabs 合作的个人和组织都接受了我们的价值观,即开放、社区、卓越和用户数据隐私。arXiv 承诺这些价值观,并且只与遵守这些价值观的合作伙伴合作。
有一个为 arXiv 社区增加价值的项目想法吗? 了解更多关于 arXivLabs 的信息.