原题链接:Missing Number
思路:这道题我的做法是,判断边界条件,求最大值,最小值,如果最小值不是0,直接返回0。否则,从0开始到最大值累积异或。然后将异或值和nums中的每一个元素异或,得出结果。
题解:
class Solution {
public:
int missingNumber(vector<int>& nums) {
/*
Timce Complexity:O(N)
Space Complexity:O(1)
*/
int sum0=0;
int sum1=0;
int n=nums.size();
int i=1;
while(i<=n){sum0+=i;i++;}
for(int e:nums)sum1+=e;
return sum0-sum1;
}
};
本文介绍了一种寻找数组中缺失数字的方法,通过计算预期总和与实际总和之差来找到缺失的数字,时间复杂度为O(N),空间复杂度为O(1)。

213

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



