题解 | #数组中只出现一次的两个数字#
数组中只出现一次的两个数字
https://www.nowcoder.com/practice/389fc1c3d3be4479a154f63f495abff8
import java.util.*; public class Solution { public int[] FindNumsAppearOnce (int[] array) { int len = array.length; int[] resArr = new int[2]; if (len == 0) return resArr; HashMap<Integer, String> map = new HashMap<>(); for (int a : array) { if (!map.containsKey(a)) map.put(a, "one"); else map.replace(a, "vans"); } Set<Map.Entry<Integer, String>> entrySet = map.entrySet(); Iterator<Map.Entry<Integer, String>> iterator = entrySet.iterator(); int index = 0; while (iterator.hasNext()) { Map.Entry<Integer, String> entry = iterator.next(); if (entry.getValue().equals("one")) { resArr[index++] = entry.getKey(); } } if (resArr[0] > resArr[1]) { int temp = resArr[0]; resArr[0] = resArr[1]; resArr[1] = temp; } return resArr; } }
这题应该算为简单才对