unordered_set中常用的内置函数
时间: 2023-08-13 12:03:36 浏览: 49
unordered_set是C++标准库中提供的一个无序集合容器,它的内置函数有以下常用的:
1. insert(key): 向unordered_set中插入一个元素key。
2. erase(key): 从unordered_set中移除指定的元素key。
3. size(): 返回unordered_set中元素的个数。
4. empty(): 判断unordered_set是否为空,如果为空则返回true,否则返回false。
5. clear(): 清空unordered_set中的所有元素。
6. find(key): 查找unordered_set中是否存在指定的元素key,如果存在则返回指向该元素的迭代器,否则返回unordered_set::end()。
7. count(key): 返回unordered_set中与指定元素key相等的元素的个数,由于unordered_set中不允许有重复的元素,因此返回值只能是0或1。
除了上述常用的内置函数外,还可以使用迭代器遍历unordered_set中的所有元素。希望对你有所帮助!
相关问题
unordered_set中的find函数
在C++的标准库中,unordered_set是一种无序不重复元素的集合容器。它基于哈希表实现,因此查找元素的时间复杂度为O(1)。
unordered_set提供了一个名为find()的成员函数,用于在容器中查找指定元素。它返回一个迭代器,指向找到的元素位置;如果未找到,则返回迭代器指向容器的end()位置。
以下是使用unordered_set的find()函数示例代码:
```cpp
#include <iostream>
#include <unordered_set>
int main() {
std::unordered_set<int> mySet = {1, 2, 3, 4, 5};
// 查找元素
int target = 3;
auto it = mySet.find(target);
// 判断是否找到
if (it != mySet.end()) {
std::cout << "Element " << target << " found in the set." << std::endl;
} else {
std::cout << "Element " << target << " not found in the set." << std::endl;
}
return 0;
}
```
输出结果为:
```
Element 3 found in the set.
```
在上述示例中,我们创建了一个包含整数元素的unordered_set,并使用find()函数查找值为3的元素。如果找到了,则输出相应的信息;否则输出未找到的信息。
unordered_set的头函数
unordered_set是C++ STL中的一个容器,它是一个无序的集合,其中的元素是唯一的。unordered_set的头文件是<unordered_set>。下面是unordered_set的一些常用头函数:
1. empty():判断unordered_set是否为空,如果为空则返回true,否则返回false。
2. size():返回unordered_set中元素的个数。
3. max_size():返回unordered_set中最大元素的个数。
4. insert():向unordered_set中插入元素。
5. erase():从unordered_set中删除元素。
6. clear():清空unordered_set中的所有元素。
7. find():查找unordered_set中是否存在某个元素,如果存在则返回该元素的迭代器,否则返回unordered_set::end()。
8. count():返回unordered_set中某个元素的个数,由于unordered_set中元素唯一,因此该函数返回值只能是0或1。
9. bucket_count():返回unordered_set中桶的个数。
10. load_factor():返回unordered_set中当前的负载因子。
11. rehash():重新分配unordered_set中的桶的数量。