这也是一道hard难度的题目吗?
很简单,维护一个数组就好了
class Solution {
public:
int firstMissingPositive(vector<int>& nums) {
int len = nums.size()+1;
int a[len];
memset(a,0,sizeof(a));
for(int i=0;i<nums.size();i++)
{
if(nums[i]>=len||nums[i]<=0)
continue;
a[nums[i]]=1;
}
for(int i=1;i<len;i++)
{
if(a[i]!=1)
return i;
}
return len;
}
};