STL关联式容器之集合set

来源:互联网 发布:python 写入文本文件 编辑:程序博客网 时间:2024/05/16 19:19

这一节,我们将学习STL关联式容器集合——set。

1、set的特性

所有元素都会根据元素的键值自动排列,set的键值就是实值,并且set不允许两个元素相同的键值。

2、我们可以通过set的迭代器改变set的元素值吗?

答案是不行,因为set的元素值就是键值,因此这关系到排列规则,如果我们擅自修改元素值,会破坏set内部的排列规则。也正因为这样,STL的set的迭代器是const_iterator。

3、STL集合的底层结构是红黑树。因此掌握了红黑树的基本操作,那么学习集合set将会很容易,几乎set的所有操作都是转调用红黑树的操作而已。

需要说明的一点是:面对关联式容器,应该使用它们提供的find的函数来搜寻元素,这样会比STL算法find函数效率更高,因为STL算法的find函数是循序搜索。

0 0