C++ STL 中 unordered_set ==
运算符
==
是 C++ STL 中的运算符,用于在两个无序集合之间执行等式比较操作,而 unordered_set::operator==
是相应的运算符函数。
语法:
(unordered_set &uset1 == unordered_set &uset2)
参数: 此运算符函数获取两个无序集合 uset1、uset2 的引用作为要比较的参数。
返回值: 此方法在比较两个集合后返回布尔结果值。 比较过程如下:
- 首先比较它们的大小。
- 然后在 ust2 中查找 ust1 中的每个元素。
如果两个条件均满足,则返回 true 值,如果在任何时候条件不满足,则返回 false 值。 下面的程序演示了 C++ 中的 unordered_set::operator==
。
程序:
#include <iostream>
#include <unordered_set>
using namespace std;
int main()
{
// 初始化三个无序集合
unordered_set<int>
sample1 = { 10, 20, 30, 40, 50 };
unordered_set<int>
sample2 = { 10, 30, 50, 40, 20 };
unordered_set<int>
sample3 = { 10, 20, 30, 50, 60 };
// 比较 sample1 和 sample2
if (sample1 == sample2) {
cout << "sample1 和 "
<< "sample2 相等。"
<< endl;
}
else {
cout << "sample1 和 "
<< "sample2 不相等。"
<< endl;
}
// 比较 sample2 和 sample3
if (sample2 == sample3) {
cout << "sample2 和 "
<< "sample3 相等。"
<< endl;
}
else {
cout << "sample2 和 "
<< "sample3 不相等。"
<< endl;
}
return 0;
}
输出:
sample1 和 sample2 相等。
sample2 和 sample3 不相等。
时间复杂度: O(N 2 )