问题:

Given an array of integers, every element appears twice except for one. Find that single one.

Note:
Your algorithm should have a linear runtime complexity. Could you implement it without using extra memory?

 

分析:

数组中的数除了一个只出现了一次之外,其它都出现了两次,

要找出只出现了一次的数我们想到可以用XOR,

代码如下:

public class Solution {
    public int singleNumber(int[] a) {
        int result = a[0];
        for(int i=1;i<a.length;i++){
            result ^= a[i];
        }
        return result;
    }
}

相关文章: