分析题目,发现在所有数字中,仅有一个只出现了一次,然后,我想到了xor的性质
二进制数与全零进行按位xor,解得的值是其本身,而成对数字xor的结果又恰恰是全零,且xor满足交换律
综上,本题得解。代码如下:
class Solution {
public:
int singleNumber(int A[], int n) {
int result;
result = A[0];
for(int i =1;i<n;i++){
result=result^A[i];
}
return result;
}
};