力扣刷题--1539. 第 k 个缺失的正整数【简单】

题目描述

给你一个 严格升序排列 的正整数数组 arr 和一个整数 k 。

请你找到这个数组里第 k 个缺失的正整数。

示例 1:

输入:arr = [2,3,4,7,11], k = 5

输出:9

解释:缺失的正整数包括 [1,5,6,8,9,10,12,13,...] 。第 5 个缺失的正整数为 9 。

算法分析

遍历1---无穷大,如果在arr当中没有找到,就加入v,如果v的大小达到了count,结束循环

完整代码

cpp 复制代码
class Solution {
public:
    int findKthPositive(vector<int>& arr, int k) {
        vector<int>v;//用于保存,不在arr当中的整数
        for(int i=1;i<INT_MAX;i++)//注意INT_MAX的使用
        {
            //使用find进行查找
            if(find(arr.begin(),arr.end(),i)==arr.end())//如果在arr中没有找到
                v.push_back(i);
            int count=v.size();//v数组的大小
            if(count==k)
            {
                return v[k-1];
            }
        }
        return -1;
    }
};

相关推荐
纪元A梦2 小时前
贪心算法应用:化工反应器调度问题详解
算法·贪心算法
阿让啊2 小时前
C语言strtol 函数使用方法
c语言·数据结构·c++·单片机·嵌入式硬件
深圳市快瞳科技有限公司2 小时前
小场景大市场:猫狗识别算法在宠物智能设备中的应用
算法·计算机视觉·宠物
liulilittle3 小时前
OPENPPP2 —— IP标准校验和算法深度剖析:从原理到SSE2优化实现
网络·c++·网络协议·tcp/ip·算法·ip·通信
superlls5 小时前
(算法 哈希表)【LeetCode 349】两个数组的交集 思路笔记自留
java·数据结构·算法
田里的水稻5 小时前
C++_队列编码实例,从末端添加对象,同时把头部的对象剔除掉,中的队列长度为设置长度NUM_OBJ
java·c++·算法
纪元A梦6 小时前
贪心算法应用:保险理赔调度问题详解
算法·贪心算法
Ripple123126 小时前
数据结构:顺序表与链表
数据结构·链表
Jayden_Ruan6 小时前
C++逆向输出一个字符串(三)
开发语言·c++·算法
一个响当当的名号7 小时前
B树,B+树,B*树(无代码)
数据结构·b树