在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任一一个重复的数字。存在不合法的输入的话输出-1。
class Solution {
public:
int duplicate(vector<int>& numbers) {
int i=0;
int n=numbers.size();
int*repeat=new int[numbers.size()];
for(i=0;i<=n-1;i++)
{
repeat[numbers[i]]++;
if(repeat[numbers[i]]>1)
{
return numbers[i];
}
}
return -1;
}
};