原题:
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?
class Solution {
public:
int missingNumber(vector<int>& nums) {
int sum=0;
int n=nums.size();
for(auto &a:nums)
{
sum+=a;
}
return n*(n+1)/2-sum;
}
};
技巧问题,也是智商问题。。。(此处为自己的智商着急一下)
等差数列求和一下,然后减掉数组的和就得到该missing number
本文介绍了一种在给定的包含n个不同整数的数组中寻找缺失数字的方法。通过等差数列求和原理,减去数组的实际总和,从而高效地找到缺失的数字。算法实现简单且运行效率高。
371

被折叠的 条评论
为什么被折叠?



