假设我们有一个称为nums的数字列表,我们必须找到第一个缺失的正数。换句话说,数组中不存在的最低正数。该数组也可以包含重复项和负数。
因此,如果输入类似于nums = [0,3,1],则输出将为2
为了解决这个问题,我们将遵循以下步骤-
nums:=一组以nums表示的所有正数
如果nums为null,则
返回1
对于范围在1到nums + 2的i
如果我不以数字表示,那么
还给我
让我们看下面的实现以更好地理解-
class Solution: def solve(self, nums): nums = set(num for num in nums if num > 0) if not nums: return 1 for i in range(1, len(nums) + 2): if i not in nums: return i ob = Solution()nums = [0,3,1] print(ob.solve(nums))
[0,3,1]
输出结果
2