STL 是不是包含哈希表? [复制]
Posted
技术标签:
【中文标题】STL 是不是包含哈希表? [复制]【英文标题】:Does the STL contain a hashtable? [duplicate]STL 是否包含哈希表? [复制] 【发布时间】:2011-01-12 16:09:45 【问题描述】:可能的重复:Hashtable in C++?can anybody offer a simple hash_map example in C++?
STL 是否包含哈希表的实现?
如果是这样,您能否提供一个简短的示例来说明如何使用它?
【问题讨论】:
有,我认为它被称为 hashmap 或 hash_map。 Google 应该能够帮助您。 欺骗***.com/questions/133569/hashtable-in-c。这实际上是此页面 RHS 上“相关”列表中的第一个条目。对于一个用例,***.com/questions/2179946/… 也是第一个相关问题***.com/questions/133569/hashtable-in-c的副本 【参考方案1】:当前的标准实现不支持,STL::TR1 支持,请参阅 Unordered Map。
大多数现代编译器都有 TR1 实现,如果失败,您可以始终使用 Boost TR1 实现。
MSVC 通过服务包 1 为 VS2008 提供了它 GCC 已随 4.x 提供,但您也可以使其与 3.4.x 一起使用 AFAIR用法与 std::map 几乎相同。
【讨论】:
std::unordered_map 现在是 C++ 11 的 STL 的一部分 - en.cppreference.com/w/cpp/container/unordered_map【参考方案2】:一个快速的谷歌想出了this description of hash_map。
【讨论】:
我猜这被否决了,因为 hash_map 不是标准的。 我没有对你投反对票,但以后请提供一两句话解释“this”链接到什么。 此链接已失效。请不要出于这个确切原因发布链接作为答案。【参考方案3】:虽然不是 STL 标准的正式组成部分,但 hash_map 和 hash_set 通常用于缩短搜索时间......
http://msdn.microsoft.com/en-us/library/0d462wfh%28VS.80%29.aspx
所以,长话短说——不。
【讨论】:
std::unordered_map 现在是 C++ 11 的 STL 的一部分 - en.cppreference.com/w/cpp/container/unordered_map以上是关于STL 是不是包含哈希表? [复制]的主要内容,如果未能解决你的问题,请参考以下文章