Skip to content

MikeMirzayanov/open_addressing_hash_table

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Open addressing hash table on C++

Hope see here full-featured C++-container implementing fast and compact open addressing hash table on C++.

Proof-of-concept (see benchmark.cpp) shows that such map can be 3x faster than std::unordered_map.

API should be very like to std::unordered_map, so approximate roadmap is:

  1. One more template type parameter class Pred = std::equal_to<Key>
  2. Member function at
  3. Member function clear
  4. Member function empty
  5. Member function insert
  6. Member function equal_range
  7. Member function swap
  8. Member function operator=
  9. Member functions load_factor, max_load_factor, rehash, reserve
  10. Constant members
  11. Member types: difference_type, hasher, key_type, mapped_type, reference, size_type, value_type, pointer, const_reference, key_equal
  12. Iterators: member types iterator, const_iterator, member functions begin, end, cbegin, cend
  13. Member function emplace
  14. Member function emplace_hint
  15. Relational operators
  16. Non-member function overload: swap
  17. Move semantics

About

Open addressing hash table on C++

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published