题目描述:
有一个数组长度为n,里面元素的值都在0-n-1之间,有的元素会重复出现,有的元素不会,请找出任意一个重复出现的元素,并输出它,如果有多个,则输出第一个。
思路分析:
使用map保存每个数字的值和它对应出现的次数,然后遍历数组,查看元素的次数如果大于1则输出。
代码:
import java.util.HashMap;public class Test{ public int duplicateNumber(int []nums){ int res=-1; if(nums==null||nums.length==0) return -1; HashMapmap=new HashMap<>(); for(int i=0;i 1){ res=nums[i]; break; } } return res; }}