STL::unordered_map之无序map

 本文是Devour Heavens撰写整理的关于C++标准库的知识,所有资料均来自于C++官方文档,欢迎转载。但是为了尊重原作者的劳动,请注明出处!谢谢! 

class template

unordered_map 

 

template < class Key,                                     //unordered_map::key_type

           class T,                                                 //unordered_map::mapped_type

           class Hash = hash<Key>,                      // unordered_map::hasher

           class Pred =equal_to<Key>,                   //unordered_map::key_equal

           class Alloc = allocator<pair<const Key,T> >     // unordered_map::allocator_type

           > class unordered_map; 

 

Unordered Map

 

哈希map是一种关联容器,通过键值和映射值存储元素。允许根据键值快速检索各个元素。

在unordered_map中,键值一般用来唯一标识元素,而对应的值是一个对象关联到这个键的内容。键映射值的类型可能会有所不同。
在内部unordered_map的元素不以键值或映射的元素作任何特定的顺序排序,其存储位置取决于哈希值允许直接通过其键值为快速访问单个元素(具有恒定平均的平均时间复杂度)。
unordered_map容器比map容器更快地通过键值访问他们的单个元素,虽然unordered_map一般都是比map通过其元素的一个子集范围迭代效率低。
哈希map允许使用操作运算符(运算符[])以其键值作为参数直接访问元素。

 

容器属性

关联

   在关联容器的元素通过键值引用,而不是由他们在容器中的绝对位置。

无序

    无序容器通过哈希表组织其元素的使用,允许通过键值快速访问其对应元素。

映射

     每个元素关联到一键值对应一映射值:键值用于识别元素,其主要内容是键对应的值。

唯一键

     在容器中没有两个元素可以有相同的

分配器的唤醒

     容器使用一个分配器对象动态地处理其存储需求。  

模板参数

Key

关键值的类型。一个unordered_map中的每个元素通过键值被唯一标识。

T

映射值的类型。 一个unordered_map中的每个元素是用来存储一些数据作为其映射值。别名为成员类型unordered_map:: mapped_type。请注意,这是和unordered_map:: value_type不同的(见下文)。

Hash





 

 

 

 

 

 

 

 

 


  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值