1.题目要求:
有一组数据,只有一个数字是出现一次,其他是两次,请找出这个数字
2.题目分析:
我们知道相同的两个数字异或结果肯定为0,而0与任何数异或都为任何数。那么这组数据我们依次异或下来最后肯定剩下一个单独存在的数。
3.具体代码:
public class Zheng {
public static void main(String[] args) {
int[] num = new int[]{1,9,9,5,4,5,4,1,3,7,3};//数组里面放一组数据
System.out.println(findNumber(num));//方法实现
}
public static int findNumber(int[] num){
int n = 0;
for(int i = 0;i<num.length;i++){//for循环,依次异或
n ^= num[i];
}
return n;
}
4.运行结果:
找出唯一单独存在的数字是7