给定一个整数数组,判断是否存在重复元素。
如果存在一值在数组中出现至少两次,函数返回
true
。如果数组中每个元素都不相同,则返回false
。示例 1:
输入: [1,2,3,1] 输出: true示例 2:
输入: [1,2,3,4] 输出: false示例 3:
输入: [1,1,1,3,3,4,3,2,4,2] 输出: true
#include<bits/stdc++.h>
using namespace std;
class Solution
{
public:
bool containsDuplicate(vector<int>& nums)//vector是个容器,和数组类似
{
if (nums.empty())
{
return false;//如果该数组里面元素为空,直接返回false
}
sort(nums.begin(), nums.begin() + nums.size());//sort函数类似于冒泡法排序一样,默认按照升序排序
for (int i = 0; i < nums.size() - 1; i++)//从0开始索引到数组的倒数第二个元素
{
if (nums[i] == nums[i + 1])//如果索引到的当前元素是等于它后面一个元素的话(从小到大排过序了),证明有相等的元素
{
return true;
}
}
return false;
}
};