【位运算】出现次数为1的数 1
给定一个数组,对于只有一个元素仅出现一次,其余元素都恰好出现两次
解题思路
我们知道对于异或运算,有如下性质:x^y^y=x
于是我们可以将所有元素异或起来,最后结果就是仅出现过一次的那个元素
代码
class Solution {
public:
int singleNumber(vector<int>& nums) {
int n=nums.size();
for(int i=1;i<n;++i){
nums[i]^=nums[i-1];
}
return nums[n-1];
}
};

浙公网安备 33010602011771号