LeetCode41. First Missing Positive(C++)

Given an unsorted integer array, find the smallest missing positive integer.

Example 1:

Input: [1,2,0]
Output: 3

Example 2:

Input: [3,4,-1,1]
Output: 2

Example 3:

Input: [7,8,9,11,12]
Output: 1

解题思路:计数排序的思想

class Solution {
public:
    int firstMissingPositive(vector<int>& nums) {
        int len=nums.size(),result=1;;
        vector<bool>visit(len+2,false);
        for(int i=0;i<len;i++)
            if(nums[i]>0)
                visit[nums[i]]=true;
        while(visit[result++]);
        return result-1;
    }
};

猜你喜欢

转载自blog.csdn.net/qq_41562704/article/details/86490134