Given an array containing n distinct numbers taken from 0,
1, 2, ..., n
, find the one that is missing from the array.
For example,
Given nums = [0, 1, 3]
return 2
.
Note:
Your algorithm should run in linear runtime complexity. Could you implement it using only constant extra space complexity?
思路:将1.....n加起来,然后减去nums[0].....nums[n-1]
代码如下(已通过leetcode)
public int missingNumber(int[] nums) {
int len =nums.length;
int sum = (int)((len*(len+1))/2);
for(int i: nums)
sum-=i;
return
sum;}