c++ set常用方法
时间: 2023-11-06 16:54:04 浏览: 48
set是一种集合容器,它按照升序存储唯一的元素。常用的set方法有:
1. insert():向set容器中插入元素。
2. erase():按元素值删除元素。
3. begin():返回容器中第一个元素的迭代器,*s.begin()为该元素的值。
4. end():返回指向容器中最后一个元素的下一位的迭代器。
5. rbegin():返回容器中最后一个元素的迭代器。
6. rend():返回容器中第一个元素的迭代器。
7. size():返回set容器的大小。
8. find():返回一个指向被查找到元素的迭代器。
9. count():返回某个元素在set容器中出现的次数。
10. empty():判断容器是否为空,空为true。
11. clear():清空容器。
相关问题
c++的set的常用方法
C++中的`std::set`是一个有序的集合容器,它可以自动根据元素的值进行排序,并且不允许重复元素。下面是`std::set`的一些常用方法:
1. 插入元素:
- `insert(val)`:向set中插入元素`val`。
- `emplace(args...)`:在set中就地构造元素,避免了拷贝或移动操作。
2. 删除元素:
- `erase(val)`:从set中删除所有值为`val`的元素。
- `erase(it)`:从set中删除迭代器`it`指向的元素。
- `clear()`:清空set中的所有元素。
3. 查找元素:
- `find(val)`:返回一个迭代器,指向第一个值为`val`的元素。若未找到,返回指向set尾部的迭代器。
- `count(val)`:返回set中值为`val`的元素的个数(只能是0或1)。
4. 迭代器:
- `begin()`:返回指向set中第一个元素的迭代器。
- `end()`:返回指向set尾部的迭代器。
- `rbegin()`:返回指向set中最后一个元素的反向迭代器。
- `rend()`:返回指向set起始位置的反向迭代器。
5. 容量:
- `size()`:返回set中元素的个数。
- `empty()`:检查set是否为空。
6. 其他:
- `lower_bound(val)`:返回一个迭代器,指向第一个大于等于`val`的元素。
- `upper_bound(val)`:返回一个迭代器,指向第一个大于`val`的元素。
- `equal_range(val)`:返回一个pair,包含两个迭代器,分别指向与`val`相等的元素范围。
这些是`std::set`的一些常用方法,希望对你有帮助!如果还有其他问题,请随时提问。
C++ set
C++中的set是一种关联容器,它存储唯一且有序的元素。在set中插入的元素会自动按照升序排序,并且每个元素都是唯一的。set常用的操作包括插入、删除、查找、迭代器遍历等。
以下是set的一些常用函数:
1. insert():向set中插入元素。
2. erase():从set中删除指定元素。
3. find():在set中查找指定元素。
4. size():返回set中元素的个数。
5. empty():判断set是否为空。
6. begin() 和 end():返回set的起始迭代器和结束迭代器,可以用于遍历set中的元素。
以下是set的示例代码:
```c++
#include <iostream>
#include <set>
using namespace std;
int main()
{
set<int> s;
// 向set中插入元素
s.insert(3);
s.insert(1);
s.insert(5);
s.insert(4);
// 遍历set中的元素
for (auto it = s.begin(); it != s.end(); ++it)
cout << *it << " ";
cout << endl;
// 查找set中的元素
if (s.find(5) != s.end())
cout << "5 is in the set" << endl;
// 删除set中的元素
s.erase(3);
// 判断set是否为空
if (!s.empty())
cout << "set size: " << s.size() << endl;
return 0;
}
```
输出结果:
```
1 3 4 5
5 is in the set
set size: 3
```