关联容器:
1)map:经过排序了的二元组的集合,map中的每个元素都是由两个值组成,其中的key(键值,一个map中的键值必须是唯一的) 是在排序或搜索时使用,它的值可以在容器中重新获取;而另一个值是该元素关联的数值。
2)set:包含了经过排序了的数据,这些数据的值(value)必须是唯一的
map和set的基本原理:红黑树。
一.红黑树实现——STL中的map
1.map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。
2.map的功能:
1)自动建立Key - value的对应(key 和 value可以是任意你需要的类型)
2)根据key值快速查找记录,查找的复杂度基本是Log(N),如果有1000个记录,最多查找10次,1,000,000个记录,最多查找20次。
3)快速插入Key – Value 记录
4)快速删除记录
5)根据Key 修改value记录
6)遍历所有记录
3.map对象是模板类,需要关键字和存储对象两个模板参数,这样就定义了一个用int作为索引,并拥有相关联的指向string的指针.
4.map使用:
1.数据的插入
在构造map容器后,我们就可以往里面插入数据了
1)用insert函数插入pair数据
<
版权声明:本文为yiyi0116原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。