# Leetcode 268. Missing Number
###### tags: `Leetcode`
題目
Given an array nums containing n distinct numbers in the range [0, n], return the only number in the range that is missing from the array.
Example 1:
Input: nums = [3,0,1]
Output: 2
Explanation: n = 3 since there are 3 numbers, so all numbers are in the range [0,3]. 2 is the missing number in the range since it does not appear in nums.
Example 2:
Input: nums = [0,1]
Output: 2
Explanation: n = 2 since there are 2 numbers, so all numbers are in the range [0,2]. 2 is the missing number in the range since it does not appear in nums.
Example 3:
Input: nums = [9,6,4,2,3,5,7,0,1]
Output: 8
Explanation: n = 9 since there are 9 numbers, so all numbers are in the range [0,9]. 8 is the missing number in the range since it does not appear in nums.
解法:
1.xor的基本定理
* a xor a = 0
* if a xor b = c
* a xor c = b
* b xor c = a
======================
```
int missingNumber(int* nums, int numsSize){
int res = 0;
for(int i = 0; i < numsSize; i++)
{
res^=i;
res^=nums[i];
}
return res^=numsSize;
}
```