【发布时间】:2011-02-17 15:13:33
【问题描述】:
什么是类似于 java 提供的用于哈希表/哈希映射的好 C++ 库。我使用过 Google Sparsehash,但它不支持冲突。
【问题讨论】:
什么是类似于 java 提供的用于哈希表/哈希映射的好 C++ 库。我使用过 Google Sparsehash,但它不支持冲突。
【问题讨论】:
除了其他答案中提到的之外,您还可以尝试MCT 的closed_hash_map 或linked_hash_map。它在内部类似于 Google SparseHash,但不限制使用的值并具有其他一些功能优势。
不过,我不确定我是否理解您所说的“不支持碰撞”是什么意思。当然,Google SparseHash 和类似实现的 MCT 都可以很好地处理冲突,尽管与 Java 的 HashMap 不同。
【讨论】:
使用std::unordered_map(或unordered_multimap),尽管它的名字是一个哈希表——它将成为下一个C++标准的一部分,并且在大多数当前的C++实现中都可用。不要使用您的实现可能提供的名称中带有 hash 的类 - 它们不是标准的,也不会是标准的。
【讨论】:
【讨论】: