What is unordered_set in C++

What is unordered_set in C++

本文关键字:in C++ set is unordered What      更新时间:2023-10-16

下面是来自leetcode的代码块,我想知道第二行是什么意思。我从未见过这种初始化集。谁能帮忙?谢谢!

bool containsDuplicate(vector<int>& nums) {
unordered_set<int> s (nums.begin(), nums.end());
return s.size()!=nums.size();
}
unordered_set<int> s (nums.begin(), nums.end());

这通过迭代指定的vector来初始化集合,从向量的开头开始,一直迭代直到它到达末尾,为vector中的每个int调用s.insert(theVal)

return s.size()!=nums.size();

由于unordered_set本质上不允许集合中存在任何重复的键(即尝试将键插入集合,而该键已经是集合的成员,根本不会修改集合(,那么我们知道如果集合的最终大小小于输入向量的大小, 输入向量中必须至少有一个重复值。