原题链接: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;
}
};