//遍历
class Solution {
public:
int findRepeatNumber(vector<int>& nums) {
sort(nums.begin(),nums.end());
for(int i=0;i<nums.size();i++)
{
if(nums[i]==nums[i+1]) return nums[i];
}
return -1;
}
};
//哈希表
class Solution {
public:
int findRepeatNumber(vector<int>& nums) {
unordered_map <int,bool> map;
for(int num:nums)
{
if(map[num]) return num;
map[num]=true;
}
return -1;
}
};
//原地交换
class Solution {
public:
int findRepeatNumber(vector<int>& nums) {
int i=0;
while(i<nums.size())
{
if(nums[i]==i)
{
i++;
continue;
}
if(nums[i]!=nums[nums[i]])
swap(nums[i],nums[nums[i]]);
else
return nums[i];
}
return -1;
}
};