Cuckoo hashing. Pagh, R. & Rodler, F. F. J Algorithms, 51(2):122–144, Academic Press, Inc., Duluth, MN, USA, 2004.
doi  abstract   bibtex   
We present a simple dictionary with worst case constant lookup time, equaling the theoretical performance of the classic dynamic perfect hashing scheme of Dietzfelbinger et al. [SIAM J. Comput. 23 (4) (1994) 738-761]. The space usage is similar to that of binary search trees. Besides being conceptually much simpler than previous dynamic dictionaries with worst case constant lookup time, our data structure is interesting in that it does not use perfect hashing, but rather a variant of open addressing where keys can be moved back in their probe sequences. An implementation inspired by our algorithm, but using weaker hash functions, is found to be quite practical. It is competitive with the best known dictionaries having an average case (but no nontrivial worst case) guarantee on lookup time.
@Article{pagh04cuckoo,
  author    = {Pagh, Rasmus and Rodler, Flemming Friche},
  title     = {Cuckoo hashing},
  journal   = {J Algorithms},
  year      = {2004},
  volume    = {51},
  pages     = {122--144},
  issn      = {0196-6774},
  abstract  = {We present a simple dictionary with worst case constant lookup time, equaling the theoretical performance of the classic dynamic perfect hashing scheme of Dietzfelbinger et al. [SIAM J. Comput. 23 (4) (1994) 738-761]. The space usage is similar to that of binary search trees. Besides being conceptually much simpler than previous dynamic dictionaries with worst case constant lookup time, our data structure is interesting in that it does not use perfect hashing, but rather a variant of open addressing where keys can be moved back in their probe sequences. An implementation inspired by our algorithm, but using weaker hash functions, is found to be quite practical. It is competitive with the best known dictionaries having an average case (but no nontrivial worst case) guarantee on lookup time.},
  address   = {Duluth, MN, USA},
  doi       = {10.1016/j.jalgor.2003.12.002},
  number    = {2},
  keywords  = {data structures, dictionaries, experiments, hashing, information retrieval, searching; hashing with constant lookup and amortized storing},
  owner     = {Sebastian},
  publisher = {Academic Press, Inc.},
  timestamp = {2011.10.19},
}

Downloads: 0