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?
数组中有一个元素只出现一次,另外的元素都是出现两次,要求不使用额外的空间,在线性时间复杂度的要求下找出只出现一次的元素
使用抑或操作
class Solution {
public:
int singleNumber(int A[], int n) {
int i, result;
result = 0;
for (i=0;i<n;i++)
result = result^A[i];
return result;
}
};