每日一题之缺失的第一个正数

简介: 大家好,我是泡泡,给大家带来每日一题的目的是为了更好的练习算法,我们的每日一题这个月进度是数据结构,让大家练到各种各样的数据结构题目,熟悉数据结构的增删改查,一年以后,蜕变成为一个不一样的自己!

今日题目:缺失的第一个正数


题目难度:⭐️


题目涉及算法:排序,暴力枚举,二分,记忆化搜索,双指针,位运算,哈希表等


ps:有能力的小伙伴可以尝试优化自己的代码双百或者一题多解,这样能综合提升自己的算法能力


我选用的哈希表解题


执行用时: 132 ms


内存消耗: 31.1 MB


解题思路:


利用哈希表保存数组的全部值,如果是负数或者超值就不保存了,然后遍历判断!


#define MAX 500001
int hash[500001];
int firstMissingPositive(int* nums, int numsSize){
    memset(hash,0,sizeof(hash));
    for(int i=0;i<numsSize;i++)
    {
        if(nums[i]>0&&nums[i]<MAX)
        {
            hash[nums[i]]++;
        }
    }
    for(int i=1;i<=numsSize;i++)
    {
        if(hash[i]==0)
        {
            return i;
        }
    }
    return numsSize+1;
}


每日一题,有效内卷!

目录
相关文章
|
5月前
Leetcode第41题(缺失的第一个正数)
这篇文章介绍了解决LeetCode第41题“缺失的第一个正数”的两种方法:使用哈希表和调整数组元素位置,以实现时间复杂度为O(n)且只使用常数级别额外空间的解决方案。
67 0
Leetcode第41题(缺失的第一个正数)
|
10月前
|
存储 C语言
牛客网刷题总结(1.有序序列判断,2.获得月份天数,3.矩阵相等判定,4.矩阵转换,5.井字棋判断输赢,6.递归进行进制转化)
牛客网刷题总结(1.有序序列判断,2.获得月份天数,3.矩阵相等判定,4.矩阵转换,5.井字棋判断输赢,6.递归进行进制转化)
94 0
|
7月前
|
搜索推荐 索引 Python
【面试题】缺失的第一个整数
【面试题】缺失的第一个整数
58 0
|
9月前
|
存储 算法 数据挖掘
LeetCode题目41:缺失的第一个正数
LeetCode题目41:缺失的第一个正数
|
10月前
leetcode-41:缺失的第一个正数
leetcode-41:缺失的第一个正数
44 0
LeetCode-41 缺失的第一个正整数
LeetCode-41 缺失的第一个正整数
|
算法 安全 Swift
LeetCode - #41 缺失的第一个正数
不积跬步,无以至千里;不积小流,无以成江海,Swift社区 伴你前行。如果大家有建议和意见欢迎在文末留言,我们会尽力满足大家的需求。
|
存储 机器学习/深度学习
母牛的故事 替换空格 二进制中1的个数 不使用第三个变量交换a,b的值
母牛的故事 替换空格 二进制中1的个数 不使用第三个变量交换a,b的值
100 0
|
算法
leetcode:41.缺失的第一个正数
给定一个未排序的整数数组,找出其中没有出现的最小的正整数。
61 0
剑指offer 56. 0到n-1中缺失的数字
剑指offer 56. 0到n-1中缺失的数字
90 0