unordered_set的函数用法
时间: 2023-10-12 22:14:20 浏览: 96
unordered_map和unordered_set的模拟实现
5星 · 资源好评率100%
unordered_set是C++ STL中的一个容器,用于存储元素的无序集合。以下是常用的unordered_set函数的用法:
1. insert():向unordered_set中插入元素,如果元素已经存在,则不会插入。
```
unordered_set<int> s;
s.insert(1);
s.insert(2);
s.insert(3);
```
2. erase():从unordered_set中删除元素,如果元素不存在,则不会删除。
```
unordered_set<int> s = {1, 2, 3};
s.erase(2);
```
3. find():在unordered_set中查找元素,返回指向该元素的迭代器,如果元素不存在,则返回end()迭代器。
```
unordered_set<int> s = {1, 2, 3};
auto it = s.find(2);
if (it != s.end()) {
// 元素存在
} else {
// 元素不存在
}
```
4. size():返回unordered_set中元素的个数。
```
unordered_set<int> s = {1, 2, 3};
cout << s.size() << endl; // 输出3
```
5. clear():清空unordered_set中的元素。
```
unordered_set<int> s = {1, 2, 3};
s.clear();
cout << s.size() << endl; // 输出0
```
6. empty():判断unordered_set是否为空,如果为空返回true,否则返回false。
```
unordered_set<int> s;
if (s.empty()) {
// s为空
} else {
// s不为空
}
```
7. bucket_count():返回unordered_set中桶的数目。
```
unordered_set<int> s = {1, 2, 3};
cout << s.bucket_count() << endl;
```
8. load_factor():返回unordered_set中当前装载因子的值。
```
unordered_set<int> s = {1, 2, 3};
cout << s.load_factor() << endl;
```
9. max_load_factor():返回unordered_set中最大装载因子的值。
```
unordered_set<int> s = {1, 2, 3};
cout << s.max_load_factor() << endl;
```
10. reserve():设置unordered_set的桶数,以便能够容纳更多元素。
```
unordered_set<int> s;
s.reserve(100);
```
阅读全文