arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 0910.5147cs.DScs.DMmath.COmath.PR
收藏

Cuckoo Hashing的尖锐负载保持

Sharp Load Thresholds for Cuckoo Hashing

Nikolaos Fountoulakis, Konstantinos Panagiotou

摘要:

多种选择的范例已经显著地影响了高效数据结构的设计,尤其是哈希表。Cuckoo hashing是扩展这个概念的一种技术。在那里,我们得到一个包含$n$位置的表,并且我们假设每个位置可以保存一个项目。每个要插入的项目随机选择k>1个位置,并必须放置在其中任何一个位置。在冲突阻止将可用项成功分配到所选位置之前,cuckoo hashing可以处理多少负载?这种方法的实际评估表明,可以分配的元素的数量是表的大小的一个大的比例,非常接近1,即使对于小的k值,如4或5。在本文中,我们表明,有一个临界值为这个比例:与高概率,当可用项目的数量低于这个值,那么这些可以成功地分配,但当它超过这个值,分配变得不可能。对于每个k>1,我们明确给出这个临界值。这回答了Mitzenmacher(ESA '09)提出的一个悬而未决的问题,并在理论上支持了实验结果。我们的证明是基于将问题转化为一个超图的设置,并研究了随机k-一致超图的相关典型性质。

英文摘要:

The paradigm of many choices has influenced significantly the design of efficient data structures and, most notably, hash tables. Cuckoo hashing is a technique that extends this concept. There,we are given a table with $n$ locations, and we assume that each location can hold one item. Each item to be inserted chooses randomly k>1 locations and has to be placed in any one of them. How much load can cuckoo hashing handle before collisions prevent the successful assignment of the available items to the chosen locations? Practical evaluations of this method have shown that one can allocate a number of elements that is a large proportion of the size of the table, being very close to 1 even for small values of k such as 4 or 5. In this paper we show that there is a critical value for this proportion: with high probability, when the amount of available items is below this value, then these can be allocated successfully, but when it exceeds this value, the allocation becomes impossible. We give explicitly for each k>1 this critical value. This answers an open question posed by Mitzenmacher (ESA '09) and underpins theoretically the experimental results. Our proofs are based on the translation of the question into a hypergraph setting, and the study of the related typical properties of random k-uniform hypergraphs.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑