简便算法:一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现 一次的数字。
数组中只出现一次的数字
http://www.nowcoder.com/questionTerminal/e02fdb54d7524710a7d664d082bb7811
易解
//看了很多老哥都是用异或实现,我投了个巧,大家可以看看,提出建议呀。
//description of question
//一个整型数组里除了两个数字之外,其他的数字都出现了两次。请写程序找出这两个只出现
//一次的数字。
import java.util.ArrayList;
public class Solution {
public void FindNumsAppearOnce(int[] array, int num1[], int num2[]) { if (array.length < 2) return; ArrayList<Integer> list1 = new ArrayList<>(); ArrayList<Integer> list2=new ArrayList<>(); for (int i = 0; i < array.length; i++) { Integer j=array[i]; if (!list1.contains(j)) { list1.add(j); }else{ list1.remove(j); } System.out.println(list1); } num1[0] = list1.get(0); num2[0] = list1.get(1); }
//测试用例
// public static void main(String[] args) {
// Solution solution=new Solution();
// int [] array={1,2,1,2,3,3,5,5,9,7};
// int [] n1=new int[1];
// int [] n2=new int[1];
// solution.FindNumsAppearOnce(array,n1,n2);
// }
}