Bit Manipulation
13. Missing Number
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.
Examples
Example 1
Input: nums = [3,0,1]
Output: 2
Explanation: n = 3 so numbers should be in [0,3]. 2 is missing.
Example 2
Input: nums = [0,1]
Output: 2
Example 3
Input: nums = [9,6,4,2,3,5,7,0,1]
Output: 8
Constraints
n == nums.length1 <= n <= 10^40 <= nums[i] <= n- All the numbers of
numsare unique.
from typing import List
# Find the missing number in [0..n] using XOR
nums: List[int] = [9, 6, 4, 2, 3, 5, 7, 0, 1]
ans: int = 0
# XOR all indices from 0 to n
for i in range(len(nums) + 1):
ans ^= i
# XOR all values in nums; the remaining value is the missing number
for i in nums:
ans ^= i
print(ans) Keyboard shortcuts
← h Previous problem
→ l Next problem
Esc Back to index
? Toggle this help