不排序,两步循环解法
来源:5-8 缺失的第一个正数(1)

商无盐
2019-11-13
var firstMissingPositive = function(nums) {
let s = new Set();
let max = 0;
nums.forEach(n => {
s.add(n);
if (n > max) {
max = n;
}
});
for (let i = 1; i <= max + 1; i++) {
if (!s.has(i)) {
return i;
}
}
};
写回答
1回答
-
快乐动起来呀
2019-11-13
思路没问题,只是如果 max 很大时间复杂度考虑下是多少?
00
相似问题