题目:
给定一个整数数组,查找数组是否包含任何重复项。
如果数组中任何值至少出现两次,则函数应返回true,如果每个元素都不相同,则返回false。
事例:
Input: [1,2,3,1] Output: true
程序代码:
我自己写的:
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
sort(nums.begin(),nums.end());
if(nums.size()==1)
return false;
else
{
for (int i=0; i != nums.size(); i++)
{
if(nums[i]==nums[i+1])
return true;
}
return false;
}
}
};
看到讨论里神奇小子用了一行就写出来的:
class Solution {
public:
bool containsDuplicate(vector<int>& nums) {
return set<int>(nums.begin(), nums.end()).size() < nums.size();
利用了set容器去重的功能