We present highly optimized data structures for the dynamic predecessor problem, where the task is to maintain a set $S$ of $w$-bit numbers under insertions, deletions, and predecessor queries (return the largest element in $S$ no larger than a given key). The problem of finding predecessors can be viewed as a generalized form of the membership problem, or as a simple version of the nearest neighbour problem. It lies at the core of various real-world problems such as internet routing. In this work, we engineer (1) a simple implementation of the idea of universe reduction, similar to van-Emde-Boas trees (2) variants of y-fast tries [Willard, IPL'83], and (3) B-trees with different strategies for organizing the keys contained in the nodes, including an implementation of dynamic fusion nodes [P\v{a}tra\c{s}cu and Thorup, FOCS'14]. We implement our data structures for $w=32,40,64$, which covers most typical scenarios. Our data structures finish workloads faster than previous approaches while being significantly more space-efficient, e.g., they clearly outperform standard implementations of the STL by finishing up to four times as fast using less than a third of the memory. Our tests also provide more general insights on data structure design, such as how small sets should be stored and handled and if and when new CPU instructions such as advanced vector extensions pay off.


翻译:我们为动态的前身问题展示了高度优化的数据结构,我们的任务是在插入、删除和前问题(将最大元素以美元返回不大于给定键的最大元素)下维持一套价值为WW美元比特数字的固定数据结构。寻找前身的问题可以被视为会员问题的一种普遍形式,或近邻问题的一种简单版本。它是互联网路径等各种现实世界问题的核心。我们在此工作中设计了(1) 简单落实宇宙缩小概念,类似于范恩德-波阿斯树(2) 和快速尝试的变种[Willard, IPL'83],以及(3) B-Tree,采用不同的战略来组织节点中所含的钥匙,包括执行动态融合节点[P\v{a}tra\c{cu}和Throup,FOCS'14]。我们实施的数据结构是$w=32,40,64美元,涵盖最典型的情景。我们的数据结构完成工作量比以往更快,同时大大加快了[Willard, IPL'83] 和(3) Bree-t 方法,采用不同的战略来组织节键,用于组织节点的钥匙,包括执行动态组合[Plast develop deview] 标准,如果我们的数据在快速运行中,那么快速测试中,那么精确地进行,那么,那么,那么快速地将数据结构应提供快速的测试,如果在快速的测试,那么快速的顺序上,在快速的顺序上,如果在快速的顺序上,那么在快速的顺序上,那么,应该提供更精确的缩压式的操作式的顺序上,在快速的顺序上进行。

0
下载
关闭预览

相关内容

《工程》是中国工程院(CAE)于2015年推出的国际开放存取期刊。其目的是提供一个高水平的平台,传播和分享工程研发的前沿进展、当前主要研究成果和关键成果;报告工程科学的进展,讨论工程发展的热点、兴趣领域、挑战和前景,在工程中考虑人与环境的福祉和伦理道德,鼓励具有深远经济和社会意义的工程突破和创新,使之达到国际先进水平,成为新的生产力,从而改变世界,造福人类,创造新的未来。 期刊链接:https://www.sciencedirect.com/journal/engineering
专知会员服务
44+阅读 · 2020年12月18日
Stabilizing Transformers for Reinforcement Learning
专知会员服务
60+阅读 · 2019年10月17日
【电子书推荐】Data Science with Python and Dask
专知会员服务
44+阅读 · 2019年6月1日
已删除
将门创投
4+阅读 · 2020年6月12日
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
28+阅读 · 2019年5月18日
人工智能 | CCF推荐期刊专刊约稿信息6条
Call4Papers
5+阅读 · 2019年2月18日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
LibRec 精选:推荐系统的论文与源码
LibRec智能推荐
14+阅读 · 2018年11月29日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
【推荐】树莓派/OpenCV/dlib人脸定位/瞌睡检测
机器学习研究会
9+阅读 · 2017年10月24日
【推荐】RNN/LSTM时序预测
机器学习研究会
25+阅读 · 2017年9月8日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
Arxiv
0+阅读 · 2021年6月8日
Arxiv
0+阅读 · 2021年6月4日
Arxiv
0+阅读 · 2021年6月4日
Arxiv
0+阅读 · 2021年6月4日
Arxiv
37+阅读 · 2021年2月10日
Semantics of Data Mining Services in Cloud Computing
Arxiv
4+阅读 · 2018年10月5日
VIP会员
相关资讯
已删除
将门创投
4+阅读 · 2020年6月12日
Hierarchically Structured Meta-learning
CreateAMind
26+阅读 · 2019年5月22日
Transferring Knowledge across Learning Processes
CreateAMind
28+阅读 · 2019年5月18日
人工智能 | CCF推荐期刊专刊约稿信息6条
Call4Papers
5+阅读 · 2019年2月18日
Unsupervised Learning via Meta-Learning
CreateAMind
42+阅读 · 2019年1月3日
LibRec 精选:推荐系统的论文与源码
LibRec智能推荐
14+阅读 · 2018年11月29日
Hierarchical Disentangled Representations
CreateAMind
4+阅读 · 2018年4月15日
【推荐】树莓派/OpenCV/dlib人脸定位/瞌睡检测
机器学习研究会
9+阅读 · 2017年10月24日
【推荐】RNN/LSTM时序预测
机器学习研究会
25+阅读 · 2017年9月8日
Auto-Encoding GAN
CreateAMind
7+阅读 · 2017年8月4日
相关论文
Arxiv
0+阅读 · 2021年6月8日
Arxiv
0+阅读 · 2021年6月4日
Arxiv
0+阅读 · 2021年6月4日
Arxiv
0+阅读 · 2021年6月4日
Arxiv
37+阅读 · 2021年2月10日
Semantics of Data Mining Services in Cloud Computing
Arxiv
4+阅读 · 2018年10月5日
Top
微信扫码咨询专知VIP会员