A Faster Algorithm for Cuckoo Insertion and Bipartite Matching in Large Graphs
Megha Khosla, Avishek Anand

TL;DR
This paper introduces a new linear-time algorithm for cuckoo hashing insertion that guarantees finding a solution when it exists, outperforming previous methods and enabling faster maximum matching in large bipartite graphs.
Contribution
The paper presents a novel linear-time insertion algorithm for cuckoo hashing that guarantees success when a solution exists, improving over prior methods like random walk insertion.
Findings
The new algorithm runs in linear time with high probability and in expectation.
Experimental results show an order of magnitude speedup over Hopcroft-Karp for maximum matching.
The approach extends to finding perfect matchings in sparse bipartite graphs.
Abstract
Hash tables are ubiquitous in computer science for efficient access to large datasets. However, there is always a need for approaches that offer compact memory utilisation without substantial degradation of lookup performance. Cuckoo hashing is an efficient technique of creating hash tables with high space utilisation and offer a guaranteed constant access time. We are given locations and items. Each item has to be placed in one of the locations chosen by random hash functions. By allowing more than one choice for a single item, cuckoo hashing resembles multiple choice allocations schemes. In addition it supports dynamically changing the location of an item among its possible locations. We propose and analyse an insertion algorithm for cuckoo hashing that runs in \emph{linear time} with high probability and in expectation. Previous work on total allocation time has…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAlgorithms and Data Compression · Caching and Content Delivery · Network Packet Processing and Optimization
