有一个数组,里面是从1到1,000,000的整数,其中有一个数字出现了两次,你怎么找出那个重复的数字?
这个我想用计数排序的办法解决这个问题.
1.新生成一个数组:int[] Num = new int(1,000,000)
2.循环原来的数组oldNum
for(oldNum: i) {
Num[oldNum[i]]++;
if(Num[oldNum[i]] == 2) {
return oldNum[i];
}
}
这样就可以找出来出现了两次的数字,但是需要额外的空间。