
解答:
cpp
class Solution {
public:
int singleNumber(vector<int>& nums) {
//异或
int number=0;//初始化为0是因为,任何数和0做异或运算,结果都是原来的数
//任何数和它自己做异或,都等于0
//而异或满足交换律和结合律
for(int num:nums){
number^=num;
}
return number;
}
};
时间复杂度:O(N)
空间复杂度:O(1)