困难题目简单解|困难题目简单解 speed 90% Hard First Missing Positive, 缺失的第一个正整数

解题思路
设nums长度为n,区间[1,n+1]中,第一个未出现在nums中的数即为题目所求
?
步骤

  1. 将nums转换为set()
  2. 遍历range(1,len(set_num)+1),检测是否这些正整数存在于nums中(if i+1 in set时间复杂度为O(1))
  3. 因为此处遍历set而不是list,所以速度更快
原题链接
欢迎在我的博客轻松探索更多思路
代码
class Solution(object): def firstMissingPositive(self, nums):set_num=set(nums)for i in range(len(set_num)+1): if i+1 in set_num: continue else: return i+1return 0

【困难题目简单解|困难题目简单解 speed 90% Hard First Missing Positive, 缺失的第一个正整数】?

    推荐阅读