C++中的集合结构
集合是C++标准库中存在的数据结构,它用于维护特定数据类型中的元素集合。
以下是任何设置的数据类型的基本操作:
插入
删除
搜寻
C++标准库包含两个集合实现:
该结构集基于平衡的二叉树,其操作在O(logn)时间内进行。
结构无序集使用散列,并且其操作平均以O(1)时间工作。
选择使用哪种设置实现通常是一个问题。集合结构的好处在于,它可以保持元素的顺序并提供无序集合中不可用的功能。另一方面,无序集合会更有效。
以下代码创建一个包含整数的集合,并显示一些操作:
插入
功能插入用于将元素添加到集合中。如果集合为空,则此函数将插入元素;如果集合不为空,则此函数将追加元素。
计数
函数计数用于计算集合中存在的元素的出现次数。函数计数返回集合中某个元素的出现次数。
擦除
功能擦除用于从集合中删除或删除元素。
以下程序使用上述所有功能:
#include<iostream> #include<set> using namespace std; int main(){ set<int> s; s.insert(2); s.insert(3); s.insert(4); s.insert(5); cout<<s.count(1) <<endl; cout<<s.count(2) <<endl; cout<<s.count(4) <<endl; s.erase(2); s.erase(4); s.insert(1); cout<<s.count(2) <<endl; cout<<s.count(4) <<endl; cout<<s.count(1) <<endl; return 0; }
输出结果
0 1 1 0 0 1