特点
- 它可以存储不重复的元素集合。
- 容器的特点是内部元素没有特定的顺序,因此查找、插入和删除操作的平均时间复杂度是O(1)。
unordered_set
是基于哈希表实现的,所以在使用时需要提供一个哈希函数和相等函数。
成员函数
查找(只能查找元素是否存在)
方式一:count
#include <iostream>
#include <unordered_set>
using namespace std;
void judge(int n){
if(n == 1){
cout <<"yes"<<endl;
}else{
cout <<"no"<<endl;
}
}
int main() {
// 创建一个unordered_set
unordered_set<int> mySet = {0,1,2,3,4};
judge(mySet.count(1));
judge(mySet.count(11));
return 0;
}
yes
no
方式二:find
#include <iostream>
#include <unordered_set>
using namespace std;
int main() {
// 创建一个unordered_set
unordered_set<int> mySet = {0,1,2,3,4};
if(mySet.find(1) != mySet.end()){
cout << *mySet.find(1) <<endl;
}
if(mySet.find(11) == mySet.end()){
cout << "该元素没找到" <<endl;
}
return 0;
}
1
该元素没找到