给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。 示例 : ``` 输入: [1,2,1,3,2,5] 输出: [3,5] ``` https://leetcode-cn.com/problems/single-number-iii/ 1. 任何数与0进行异或都是自身 2. 出现2次的数经过异或后都得到0抵消掉,剩下的就是单次出现的数。 3. 由1和2 可以看出如果我们对数组的元素进行一次异或运算,最后得到的就是2个只出现一次的数的异或结果 4. 在结果数中的任意一个bit位 表示 这2个数在这个bit位上是不一样的一个是0一个是1. 5. 根据4,我们可以将这个数组进行分组,把这个位置上为1的分为一组,为0的分为1组,这样就可以把这个2个数分表落到2组中。 6. 分表对这2组进行异或运算得到的2个数就是所求的2个数。
给定一个整数数组 nums,其中恰好有两个元素只出现一次,其余所有元素均出现两次。 找出只出现一次的那两个元素。
示例 :
https://leetcode-cn.com/problems/single-number-iii/