找出数组中任意一个重复元素

一、题目

在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。

输入:[2,3,1,0,2,5,3]

输出:2或者3任意一个都可以

二、思路

遍历数组利用map.has()函数判断元素是否在map中存在

1.如果存在,返回其值

2.如果不存在,利用map.set()函数将元素及其索引添加到map中

三、程序实现

var findRepeatNumber = function(nums) {
let map=new Map();
for(let i=0;i<nums.length;i++){
if(map.has(nums[i])){
return nums[i]
}else{
map.set(nums[i],i)
}
}
};

posted @ 2022-04-15 20:36  花村店长  阅读(44)  评论(0)    收藏  举报