目录
1.关联式容器
vector、list、deque等,这些容器统称为序列式容器,因为其底层为线性序列的数据结构,里面
存储的是元素本身。
关联式容器也是用来存储数据的,与序列式容器不同的是,其里面存储的是<key,value>结构的
键值对,在数据检索时比序列式容器效率更高。
2.键值对
用来表示具有一一对应关系的一种结构,该结构中一般只包含两个成员变量key和value,key代
表键值,value表示与key对应的信息。
比如:现在要建立一个英汉互译的字典,那该字典中必然有英文单词与其对应的中文含义,而且,英文单词与其中文含义是一一对应的关系,即通过该单词,在词典中就可以找到与其对应的中文含义。
键值对的定义:
3.set
3.1set介绍
set是按照特定顺序存储唯一元素的容器。
set中元素的值在容器中不能修改一次(元素始终是const),但可以从容器中插入或删除。
map中存放的是真正的键值对<key,value>,set中只存放key,set和map底层都是用红黑树来实现的
set中的元素不可以重复(因此可以使用set进行去重)
3.2set使用
4.map
4.1map介绍

4.2map使用
这里重点讲解一下map中的operator[]这个方法,在此之前先讲一下insert
insert插入元素返回的是一个pair<iterator,bool> ,当插入一个元素时,该元素在树中不存在,就插入成功,返回的pair第一个参数指向的是插入位置的迭代器,第二个参数是true;当该元素在树中已经存在,返回的pair第一个参数是已经存在元素的迭代器,第二个是false。我们可以通过第二个参数判断插入是否成功。
下面是map中的operator[]这个方法
key_type是k
value_type是pair<K,T> -> pair<key,value>