题目的意思大概就是给一个vector,如果有重复就return true 否则 return false.
这只是一道很简单的hash题目,因为不要求顺序,用STL里的unordered_set最好。
这是我的代码
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
unordered_set<int> hash;
for(auto i=nums.begin();i!=nums.end();i++)
{
if(hash.find(*i)==hash.end())
{
hash.insert(*i);
}
else
{
return true;
}
}
return false;
}
};
然而在万能的Discuss 区找到了一个one single line的代码
return nums.size() > unordered_set<int>(nums.begin(), nums.end()).size();
set还可以用迭代器这样生成啊,真是有趣。