题目:
分析:
- 解法一: 哈希表
- 解法二: 高斯求和
- 解法三:位运算 异或运算
- 根据运算的性质, 相同的两个a异或 = 0 以示例一为例: 数组中有0,1,3, 缺失的数字是2, 那么只要我们将数组与0,1,2,3 异或, 就会得到2
代码:
class Solution {
public int missingNumber(int[] nums) {
int ret = 0;
for(int x: nums) ret ^= x;
for(int i = 0; i <= nums.length; i++) ret ^= i;
return ret;
}
}