集合是数学中的一个基本概念,通俗地理解,集合是由一些不重复的数据组成的。比如 就是{1,2,3}
一个有1,2,3三个元素的集合。
在 C++ 中我们常用的集合是 set 。
它包含在头文件#include<set>
中
构造方法:
set< T > name;
就构造了一个存储数据T的的集合name
基本操作:
插入:
name.insert(T) ;
意为:向name集合里存入数据T
注意如果集合中已经存在了某个元素,再次插入不会产生任何效果,集合中是不会出现重复元素的。
删除:
name.erase(T);
意为:把name里的T删除
注意如果集合里面没有T元素将不会有任何效果!
查找:
name.count(T);
意为:如果集合里有元素T,返回true,否则返回false
注意这个查找的时间复杂度大概在O(log(n)),因为它是一种线性数据结构所以能够比较快速地查出这个元素
遍历
这个写法比较固定:
for(set< T >::iterator it=name.begin();it!=name.end();it++)
可以当做模板背一下!
总结:
另外,集合还有一个非常重要的特性:它里面不会有重复的数据,并且会帮你自动排序!(结构体类型的需要你重新定义符号才能够正常运行哦)
感谢阅读
ov.