class Solution {
public:
int firstMissingPositive(vector<int>& nums) {
for(int i = 0; i < nums.size(); i++){
while(nums[i] != i + 1){
if(nums[i] <= 0 || nums[i] > nums.size() || nums[i] == nums[nums[i] - 1])
break;
swap(nums[i], nums[nums[i] - 1]);
}
}
for(int i = 0; i < nums.size(); i++){
if(nums[i] != i + 1){
return i + 1;
}
}
return nums.size() + 1;//???????
}
};
LeetCode Hot100 41.缺失的第一个正数
最新推荐文章于 2025-05-01 18:13:28 发布