开发者

C++ hash table implementation with collision handling

开发者 https://www.devze.com 2022-12-29 23:17 出处:网络
What is a good开发者_Go百科 C++ library for hash tables / hash maps similar to what java offers. I have worked with Google Sparsehash, but it has no support for collisions.Use std::unordered_map (or u

What is a good开发者_Go百科 C++ library for hash tables / hash maps similar to what java offers. I have worked with Google Sparsehash, but it has no support for collisions.


Use std::unordered_map (or unordered_multimap), which despite its name is a hash table - it will be part of the next C++ standard, and is available in most current C++ implementations. Do not use the classes with hash in their names that your implementation may provide - they are not and will not be standard.


http://www.sgi.com/tech/stl/hash_multimap.html

or

std::tr1::unordered_multimap


In addition to those mentioned in other answers, you could try MCT's closed_hash_map or linked_hash_map. It is internally similar to Google SparseHash, but doesn't restrict values used and has some other functional advantages.

I'm not sure I understand what you mean by "no support for collisions", though. Both Google SparseHash and similarly implemented MCT of course handle collisions fine, though differently than Java's HashMap.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号