c++ stl库中set用法
时间: 2024-05-20 19:08:46 浏览: 106
STL中set用法详解.pdf
C++ STL库中的set是一个集合容器,其中的元素是唯一的,即相同的元素只会出现一次。set是按照一定的顺序排列的,通常默认情况下是升序排列。set可以进行快速的查找、插入和删除操作,时间复杂度为O(log n)。
以下是set的常用操作:
1. 插入元素:使用insert()函数,可以插入单个元素或一组元素。
2. 删除元素:使用erase()函数,可以删除单个元素、指定位置的元素或一个范围内的元素。
3. 查找元素:使用find()函数,可以查找指定元素是否存在于set中。
4. 获取set中元素个数:使用size()函数。
5. 判断set是否为空:使用empty()函数。
以下是一些set的常见用法:
```
#include <iostream>
#include <set>
using namespace std;
int main()
{
// 创建一个set
set<int> mySet;
// 插入元素
mySet.insert(3);
mySet.insert(1);
mySet.insert(4);
mySet.insert(2);
mySet.insert(5);
// 遍历set中的所有元素
for (auto it = mySet.begin(); it != mySet.end(); it++) {
cout << *it << " ";
}
cout << endl;
// 查找元素
if (mySet.find(4) != mySet.end()) {
cout << "4 is found." << endl;
}
else {
cout << "4 is not found." << endl;
}
// 删除元素
mySet.erase(4);
// 遍历set中的所有元素
for (auto it = mySet.begin(); it != mySet.end(); it++) {
cout << *it << " ";
}
cout << endl;
// 获取set中元素个数
cout << "The size of set is " << mySet.size() << endl;
// 判断set是否为空
if (mySet.empty()) {
cout << "The set is empty." << endl;
}
else {
cout << "The set is not empty." << endl;
}
return 0;
}
```
阅读全文