题解 | #数组中重复的数字#
数组中重复的数字
https://www.nowcoder.com/practice/6fe361ede7e54db1b84adc81d09d8524
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param numbers int整型一维数组
* @return int整型
*/
export function duplicate(numbers: number[]): number {
// write code here
//如果数组没有元素,返回-1
if (numbers.length <= 0) {
return -1;
}
//如果数组里元素大于等于数组范围的最大值,返回-1
for (let i: number = 0; i < numbers.length; i++) {
if (numbers[i] > numbers.length - 1 || numbers[i] < 0) {
return -1;
}
}
let set =new Set()
for(let i :number=0;i<numbers.length;i++){
if(set.has(numbers[i])){
return numbers[i]
}
else{
set.add(numbers[i])
}
}
return -1
}