碰撞处理的C++哈希表实现

问题描述:

类似于java提供的哈希表/哈希映射的良好C++库是什么?我曾与Google Sparsehash合作,但它不支持碰撞。碰撞处理的C++哈希表实现

除了在其他答案中提到的那些,你可以试试MCTclosed_hash_maplinked_hash_map。它在内部类似于Google SparseHash,但不限制使用的值并具有其他一些功能优势。

虽然我不确定我是否明白“不支持碰撞”的含义。 Google SparseHash和类似实现的MCT当然都可以处理碰撞,但与Java的HashMap不同。

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

std::tr1::unordered_multimap

使用std::unordered_map(或unordered_multimap),但它的名字是一个哈希表 - 这将是下一个C++标准的一部分,并且可在最目前的C++实现。不要在您的实施可能提供的名称中使用hash的类 - 它们不是也不会是标准的。

+0

也可用于Boost。 – doublep 2010-05-10 14:41:34