题目:
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?
分析:方法很巧妙,相同的数求异或,结果为0,再与单独的那个数异或所求结果即为答案
代码:
class Solution {
public:
int singleNumber(vector<int>& nums) {
int res=0;
for(int i=0; i<nums.size(); i++)
{
res^=nums[i];
}
return res;
}
};