题意
0-n的数组里少了一个数(无序的),找出那个数
题解
和389题find the difference相同的思路是,计算0到n的和nSum,计算数组各个元素的和numsSum,二者的差就是Missing Number
Java
public class Solution {
public int missingNumber(int[] nums) {
int i;
int numsSum = 0;
for(i = 0;i < nums.length;i ++)
{
numsSum += nums[i];
}
int nSum = nums.length * (nums.length + 1) / 2;
return (nSum - numsSum);
}
}
C++
class Solution {
public:
int missingNumber(vector<int>& nums) {
int i;
int numsSum = 0;
for(i = 0;i < nums.size();i ++)
{
numsSum += nums[i];
}
int nSum = nums.size() * (nums.size() + 1) / 2;
return (nSum - numsSum);
}
};