题解 | #数组中重复的数字#
数组中重复的数字
http://www.nowcoder.com/practice/6fe361ede7e54db1b84adc81d09d8524
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param numbers int整型一维数组 * @return int整型 */ public int duplicate (int[] numbers) { HashMap<Integer, Integer> map = new HashMap<>(); //遍历数组:键存放数组里的值,值存放出现的次数 for (int i = 0; i < numbers.length; i++){ if (!map.containsKey(numbers[i])){ map.put(numbers[i],1); }else { map.put(numbers[i],map.get(numbers[i])+1); } } //开始判断,发现重复的就退出 for (Integer key : map.keySet()) { if (map.get(key)>1){ return key; } } return -1; } }