题目描述
给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。
解题思路
1、将0到n个数相加,再将去序列的和,既可以得到缺失的数。
2、0 - nums[0] + 1 - nums[1] + 2 - nums[2] + 3 - nums[3] + … + n - 1 + nums[n - 1] + n
代码
class Solution {
public int missingNumber(int[] nums) {
int sum = nums.length;
for(int i = 0; i < nums.length; i++)
sum += i - nums[i];
return sum;
}
}
参考:https://leetcode.com/problems/missing-number/discuss/69791/4-Line-Simple-Java-Bit-Manipulate-Solution-with-Explaination