-
Notifications
You must be signed in to change notification settings - Fork 213
Expand file tree
/
Copy pathFirst_Missing_Positive.py
More file actions
53 lines (39 loc) · 903 Bytes
/
First_Missing_Positive.py
File metadata and controls
53 lines (39 loc) · 903 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
'''
Given an unsorted integer array nums, return the smallest missing positive integer.
You must implement an algorithm that runs in O(n) time and uses constant extra space.
'''
from typing import List
class Solution:
def firstMissingPositive(self, nums: List[int]) -> int:
t=1
a=set(nums)
while t in a:
t+=1
return t
#Create object of Solution class
p1 = Solution()
lst=[]
n=int(input())
#input list from user
for i in range(n):
ele=int(input())
lst.append(ele)
print(p1.firstMissingPositive(lst))
'''
Example 1:
Input: nums = [1,2,0]
Output: 3
Explanation: The numbers in the range [1,2] are all in the array.
'''
'''
Example 2:
Input: nums = [3,4,-1,1]
Output: 2
Explanation: 1 is in the array but 2 is missing.
'''
'''
Example 3:
Input: nums = [7,8,9,11,12]
Output: 1
Explanation: The smallest positive integer 1 is missing.
'''