本篇文章为你整理了每日算法之数组中只出现一次的两个数字(每日算法之数组中只出现一次的两个数字怎么算)的详细内容,包含有每日算法之数组中只出现一次的两个数字相加 每日算法之数组中只出现一次的两个数字怎么算 数组中只出现1次的两个数字 数组只出现一次的元素 每日算法之数组中只出现一次的两个数字,希望能帮助你了解 每日算法之数组中只出现一次的两个数字。
一个整型数组里除了两个数字只出现一次,其他的数字都出现了两次。请写程序找出这两个只出现一次的数字
算法实现
既然有两个数字只出现了一次,我们就统计每个数字的出现次数,利用哈希表的快速根据key值访问其频率值。
具体做法:
step 1:遍历数组,用哈希表统计每个数字出现的频率。
step 2:然后再遍历一次数组,对比哈希表,找到出现频率为1的两个数字。
step 3:最后整理次序输出。
package mid.JZ56数组中只出现一次的两个数字;
import java.util.*;
if(array.length == 0) return new int[0];
HashMap Integer, Integer map = new HashMap ();
int[] result = new int[2];
for (int value : array) {
if (!map.containsKey(value)) {
map.put(value, 1);
} else {
map.put(value, map.get(value) + 1);
int index = 0;
for (Integer key: map.keySet()) {
if (map.get(key) == 1) {
result[index] = key;
index++;
if (index == 2) break;
Arrays.sort(result);
return result;
public static void main(String[] args) {
int[] ints = new Solution().FindNumsAppearOnce(new int[]{1, 4, 1, 6});
System.out.println(Arrays.toString(ints));
以上就是每日算法之数组中只出现一次的两个数字(每日算法之数组中只出现一次的两个数字怎么算)的详细内容,想要了解更多 每日算法之数组中只出现一次的两个数字的内容,请持续关注盛行IT软件开发工作室。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。