Bootstrap

map和set的使用

目录

1. 序列式容器和关联式容器

2. set系列的使用 

2.1 set和multiset参考文档 

2.2 set类的介绍

2.3 set的构造和迭代器

2.4 set的增删查

2.5 swap

2.6 lower_bound和upper_bound

2.7 multiset和set的差异

2.8 两个数组的交集 - 力扣

2.9 环形链表 - 力扣

3. map系列的使用

3.1 map和multimap参考文档

3.2 map类的介绍

3.3 pair类型介绍

3.4 map的构造

3.5 map的增删查

3.6 map的数据修改 

3.7 构造遍历及增删查使用样例 

3.7.1 删除

3.7.2 查找

3.2.3 修改

3.8 operator[]

3.9 multimap和map的差异

3.10 随机链表的复制 - 力扣 

3.11 前K个高频单词 - 力扣


1. 序列式容器和关联式容器

我们已经接触过STL中的部分容器,如:string、vector、list、deque、array、forward_list等,这些容器统称为序列是容器,因为逻辑结构为线性序列的数据结构,两个位置存储的值之间一般没有紧密的关联关系,比如交换一下,他依旧是序列式容器。顺序容器中的元素是按他们在容器中的存储位置来顺序保存和访问的。

关联式容器也是用来存储数据的,与序列是容器不同的是,关联式容器逻辑结构通常是非线性结构,两个位置有紧密的关联关系,交换一下,他的存储结构就被破坏了。顺序容器中的元素是按关键字来保存和访问的。关联式容器有map/set系列和unofdered_map/unordered_set系列。

map和set底层是红黑树,红黑树是一颗平衡二叉搜索树。unordered_map/unordered_set底层是哈希表,set是key搜索场景的结构,map是key/value搜索场景的结构。

2. set系列的使用 

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;