缺失的第一个正数

题目链接:

41. 缺失的第一个正数 - 力扣(LeetCode)

思路:

题目说找到缺失的第一个正整数,那么最小的正整数 是 1,我们先预设 答案是1

然后 利用 set 这个容器,去记录 nums 所出现的值,当我们遍历 nums 这个数组时,我们判断 当前的值 是否与 res 相等,相等说明出现了,那么res++ , 在 res++ 的时候,我们也要再set里面一直查询 ,查询是否已经包含 res++ 的值

代码:

javascript 复制代码
/**
 * @param {number[]} nums
 * @return {number}
 */
var firstMissingPositive = function (nums) {
    let res = 1, set = new Set();

    if (nums.length < 1) return null

    nums.forEach(num => {
        set.add(num)
        if (num === res) {
            while (set.has(res)) res++
        }
    })

    return res;
};
相关推荐
CoovallyAIHub14 分钟前
Pipecat:构建实时语音 AI Agent 的开源编排框架,500ms 级端到端延迟
深度学习·算法·计算机视觉
灰色小旋风18 分钟前
力扣13 罗马数字转整数
数据结构·c++·算法·leetcode
2301_8101609522 分钟前
C++与物联网开发
开发语言·c++·算法
cm65432026 分钟前
基于C++的操作系统开发
开发语言·c++·算法
ArturiaZ29 分钟前
【day57】
开发语言·c++·算法
CoovallyAIHub31 分钟前
Energies | 8版YOLO对8版Transformer实测光伏缺陷检测,RF-DETR-Small综合胜出
深度学习·算法·计算机视觉
Emberone38 分钟前
排序:万物皆有序
算法·排序算法
其实秋天的枫40 分钟前
2025年12月英语六级真题及答案解析完整版(第一、二、三套全PDF)
经验分享·算法
2401_874732531 小时前
C++并发编程中的死锁避免
开发语言·c++·算法
2301_792308251 小时前
C++编译期数学计算
开发语言·c++·算法