LeetCode 260. Single Number III

来源:互联网 发布:熊族刀路软件英文原版 编辑:程序博客网 时间:2024/06/03 14:11

描述

找出数组中只出现过一次的数

解决

用异或。


class Solution {public:    vector<int> singleNumber(vector<int>& nums) {        int t = 0;        for (auto& val : nums)        {            t ^= val;        }        int t1 = (t) & (~(t - 1));        int r1 = 0, r2 = 0;        for (auto& it : nums)        {            if (t1 & it)                r1 ^= it;            else                r2 ^= it;        }        return {r1, r2};    }};
0 0
原创粉丝点击