leetcode 每日一题- 找到序列中只出现一次的数

找到序列中只出现一次的数

找到序列中只出现一次的数,其他数都出现两次。
例如[0,2,2,4,0,1,1],只出现一次的数为4。
思路:采用异或^运算(xor),数值操作结果相同为0,不同为1
代码如下:

class Solution {
     
public:
    int singleNumber(vector<int>& nums) {
     
        int ret = 0;
        for (auto e: nums) ret ^= e;
        return ret;
    }
};
  • 时间复杂度O(n),遍历数组一次;
  • 空间复杂度O(1),储存结果。

你可能感兴趣的:(leetcode刷题,学习)