博客
关于我
1539. Kth Missing Positive Number
阅读量:279 次
发布时间:2019-03-01

本文共 969 字,大约阅读时间需要 3 分钟。

为了解决这个问题,我们需要找到缺失在给定数组中的第k个正整数。数组中的数是严格递增的正整数,但可能存在缺失的数,我们需要找到这些缺失数中的第k个。

方法思路

我们可以使用两个变量来跟踪当前位置和缺失的数量。具体步骤如下:

  • 初始化两个变量countcur,分别用于记录缺失的数量和当前位置。
  • 遍历数组中的每个元素,逐步检查是否存在缺失的数。
  • 当发现缺失的数时,继续检查直到找到第k个缺失的数。
  • 处理完数组后,继续检查后续可能的缺失数,直到找到第k个。
  • 这种方法确保了我们能够高效地找到第k个缺失的数,避免了不必要的重复计算。

    解决代码

    #include 
    using namespace std;int findKthPositive(vector
    & arr, int k) { int count = 0; int cur = 0; for (int num : arr) { cur++; while (cur < num) { count++; if (count == k) { return cur; } cur++; } } while (count < k) { cur++; count++; if (count == k) { return cur; } } return -1; // This line is theoretically unreachable as per problem constraints}

    代码解释

  • 初始化变量count用于记录缺失的数量,cur用于跟踪当前位置。
  • 遍历数组:对于数组中的每个元素,先增加cur,然后检查是否存在缺失的数。如果发现缺失的数,继续检查直到找到第k个缺失的数。
  • 处理后续缺失数:处理完数组后,继续检查后续可能的缺失数,直到找到第k个。
  • 这种方法确保了我们能够高效地找到第k个缺失的数,避免了不必要的重复计算。

    转载地址:http://saqo.baihongyu.com/

    你可能感兴趣的文章
    Python 操作Redis
    查看>>
    Python 操作sqlite数据库及保存查询numpy类型数据(一)
    查看>>
    Python 操作sqlite数据库及保存查询numpy类型数据(二)
    查看>>
    Python 操作数据库
    查看>>
    Python 数据分析与可视化实战
    查看>>
    python 数据可视化 -- matplotlib02
    查看>>
    python 数据可视化利器
    查看>>
    Python 数据可视化详解
    查看>>
    python 数据库查询返回list或tuple
    查看>>
    Python 数据库连接池管理的基本知识 (附Demo)
    查看>>
    Python学习记录-2016-12-17
    查看>>
    Python 数据库骚操作 -- MySQL
    查看>>
    Python 数据操作详解
    查看>>
    Python 数据文件与网络数据序列化存储详解
    查看>>
    Python 数据结构与算法详解
    查看>>
    Python 数据采集、清洗、整理、分析以及可视化实战
    查看>>
    Python 数据预处理
    查看>>
    python 文件类型检测 linux和windows都可以用
    查看>>
    Python多处理池,加入;不等待继续?
    查看>>
    Python多处理帮助在条件下退出
    查看>>