1. 题目描述
Given a non-empty 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?
2. 算法思想
每个数字都会出现两次,采用位运算中的异或
0 ^ N = N, N ^ N = 0
3. c++代码
class Solution {
public:
int singleNumber(vector<int>& nums) {
int x = 0;
for(int i=0;i<nums.size();i++)
{
x = x^nums[i];
}
return x;
}
};