/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param numbers int整型一维数组
* @param numbersLen int numbers数组长度
* @return int整型
*
* C语言声明定义全局变量请加上static,防止重复定义
*
* C语言声明定义全局变量请加上static,防止重复定义
*/
int duplicate(int* numbers, int numbersLen ) {
//将数组元素作为temp数组的下标,对应元素初始化为0
//当为新数组的元素为0时,则代表是第一次读取,做标记元素变为1
//不为0则说明是第二次读取,即有重复元素
int temp[numbersLen];
memset(temp,0,numbersLen*sizeof(int));
int i=0;
for(i=0;i<numbersLen;i++){
if(temp[numbers[i]]==0){
temp[numbers[i]]=1;
}else{
return numbers[i];
}
}
return -1;
}