class Solution {
public:
int missingNumber(vector<int>& nums) {
sort(nums.begin(),nums.end());
int i=0;
for(;i<nums.size();i++)
{
if(i!=nums[i]) break;
}
return i;
}
};
sort(nums.begin(), nums.end());
对数组进行排序。虽然排序是一个可行的方法,但是排序的时间复杂度是 O(n log n)
,对于大数据量的输入来说,效率较低。
class Solution {
public:
int missingNumber(vector<int>& nums) {
int size=nums.size();
int tmp=0;
for(int i=1;i<=size;++i)
{
tmp^=i;
}
for(int i=0;i<size;++i)
{
tmp^=nums[i];
}
return tmp;
}
};