题目:
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?
异或。
C++版:
class Solution {
public:
int singleNumber(vector<int>& nums) {
int result = 0;
for(auto i : nums)
result = result ^ i;
return result;
}
};
Java版:
public class Solution {
public int singleNumber(int[] nums) {
int result = 0;
for(int i : nums)
result ^= i;
return result;
}
}
Python版:
class Solution:
# @param {integer[]} nums
# @return {integer}
def singleNumber(self, nums):
result = 0
for i in nums:
result = result ^ i
return result