面试题53 - II. 0~n-1中缺失的数字

题目:

 

 

解答:

令0~n的数与nums中的数异或,运算中除了缺失值只出现一次外,其他数都出现两次等同于与自身异或。

 1 class Solution {
 2 public:
 3     int missingNumber(vector<int>& nums) 
 4     {
 5         int n = nums.size();
 6         int res = 0;
 7         for(int i = 0;i < n;i++) 
 8         {
 9             res ^= (nums[i] ^ i);
10         }
11         
12         return res ^ n;
13     }
14 };

 

posted @ 2020-05-09 18:59  梦醒潇湘  阅读(116)  评论(0)    收藏  举报