The art of computer programming, volume 3: (2nd ed.) sorting and searching
The art of computer programming, volume 3: (2nd ed.) sorting and searching
Theoretical Improvements in Algorithmic Efficiency for Network Flow Problems
Journal of the ACM (JACM)
Optimal Arrangement of Keys in a Hash Table
Journal of the ACM (JACM)
Reducing the retrieval time of scatter storage techniques
Communications of the ACM
The analysis of double hashing(Extended Abstract)
STOC '76 Proceedings of the eighth annual ACM symposium on Theory of computing
The cost distribution of clustering in random probing
Journal of the ACM (JACM)
Optimal Arrangement of Keys in a Hash Table
Journal of the ACM (JACM)
Communications of the ACM
On the implementation of parsing tables
ACM SIGPLAN Notices
Hi-index | 0.04 |
We discuss the problem of hashing in a full or nearly full table using open addressing. A scheme for reordering the table as new elements are added is presented. Under the assumption of having a reasonable hash function sequence, it is shown that even with a full table only about 2.13 probes will be required, on the average, to access an element. This scheme has the advantage that the expected time for adding a new element is proportional to that required to determine that an element is not in the table. Attention is then turned to the optimal reordering scheme (which is a maximum flow problem) and the minimax problem of arranging the table so as to minimize the length of the longest probe sequence to find any element. A unified algorithm is presented for both of these as well as the first method suggested. A number of simulation results are reported, the most interesting being an indication that the optimal reordering scheme will lead to an average of about 1.83 probes per search in a full table.