/**
* @param {number[]} nums
* @return {number}
*/
var firstMissingPositive = function(nums) {
// 过滤掉所有的0和负数
let arr= nums.filter(item=>item>0)
// 升序排列
arr.sort((a,b)=>a-b)
console.log(arr)
if(arr[0]!=1){
return 1
}
for(let i =1;i<arr.length;i++){
if(arr[i]-arr[i-1]>1){
return arr[i-1]+1
}
}
// 如果循环都出来了还没有返回结果说明数组全是连着的数,故智能返回最后一个数加一的数
return arr[arr.length-1]+1
};
Leecode 41. 缺失的第一个正数
最新推荐文章于 2024-10-06 18:45:52 发布