【问题标题】: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 是否包含哈希表的实现?

如果是这样,您能否提供一个简短的示例来说明如何使用它?

【问题讨论】:

标签: c++ stl hashtable


【解决方案1】:

当前的标准实现不支持,STL::TR1 支持,请参阅 Unordered Map

大多数现代编译器都有 TR1 实现,如果失败,您可以始终使用 Boost TR1 实现。

  • MSVC 通过服务包 1 为 VS2008 提供了它
  • GCC 已随 4.x 提供,但您也可以使其与 3.4.x 一起使用 AFAIR

用法与 std::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
猜你喜欢
  • 2017-04-13
  • 1970-01-01
  • 2017-04-28
  • 1970-01-01
  • 1970-01-01
  • 2013-11-22
  • 2018-02-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多