第十一章 关联容器

关联容器

元素按关键字来保存和访问。

map

关键字-值 对

set

关键字

关联容器类型

按关键字有序保存元素

map 保存关键字-值对
set 保存关键字
multimap 关键字可重复出现的map
multiset 关键字可重复出现的set

按关键字无序保存元素

unordered_map 用哈希函数组织的map
unordered_set 用哈希函数组织的set
unordered_multimap 关键字可重复出现的用哈希函数组织的map
unordered_multiset 关键字可重复出现的用哈希函数组织的set

pair

pair<string,int> anon;
anon.first
anon.second
make_pair(v1,v2)

map

  1. 基于红黑树实现(红黑树是一种自平衡二叉树,保障了良好的最坏情况运行时间,可以在O(log n)时间内完成查找、插入、删除)
  2. 红黑树是一种二叉查找树,其重要性质是有序,中序遍历时取出的元素是有序的。

容器的遍历

auto map_it=word_count.cbegin();
while(map_it != word_count.cend()){
cout<<map_it->first<<" "<<map_it->second;
++map_it;
}

unordered_map

  1. 基于hash_table实现,一般是由一个大vector,vector元素节点可以挂接链表来实解决冲突来实现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值