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

You Might Also Like
Save hundreds of developer hours with components built for SaaS applications. Icon
Save hundreds of developer hours with components built for SaaS applications.

The #1 Embedded Analytics Solution for SaaS Teams.

Whether you want full self-service analytics or simpler multi-tenant security, Qrvey’s embeddable components and scalable data management remove the guess work.
Try Developer Playground
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