The advantage of this project is that you can use this hash map by including only 2 files to your project. (or 1 if you want by cut/paste pool.hpp content directly in hashmap.hpp if you want).

It is template and doesn't require that your contained types are PODs, it doesn't require to set delete_key and empty_key. Unlike google densemap.

It is mostly "C++ unordered_map" standard conformant and if you download it, you'll find a visual studio project, or a CMakeLists.txt that integrates the test suite from GCC for unordered_map. Which this map passes.

Some bench:
== 1 million int pushes ==
*open address: 275.852 ms
*reserved openaddr: 110.268 ms
std unordered: 277.544 ms

== 100k random erasures ==
*openaddr: 8.70804 ms
std unordered: 20.6305 ms

== 1M iteration ==
*openaddr: 185.528 ms
std unordered: 1010.53 ms

== 50k finds in 1M ==
*openaddr: 4.24 ms
std unordered: 10.44 ms

Project Samples

Project Activity

See All Activity >

Categories

Admin Templates

License

zlib/libpng License

Follow C++ generic open address hash map

C++ generic open address hash map Web Site

Other Useful Business Software
$300 in Free Credit Towards Top Cloud Services Icon
$300 in Free Credit Towards Top Cloud Services

Build VMs, containers, AI, databases, storage—all in once place.

Start your project in minutes. After credits run out, 20+ products include free monthly usage. Only pay when you're ready to scale.
Get Started
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of C++ generic open address hash map!

Additional Project Details

Intended Audience

Developers

Programming Language

C++

Related Categories

C++ Admin Templates

Registered

2015-06-18