Menu
CoddyTech

First Missing Positive

Sıralanmamış bir tamsayı dizisi nums veriliyor. nums içinde bulunmayan en küçük pozitif tamsayıyı (1 veya daha büyük) döndürün. Dizi negatif sayılar, sıfırlar, tekrarlanan değerler ve uzunluğundan çok daha büyük değerler içerebilir.

Fonksiyon

firstMissingPositive(nums: integer-array) → integer
numsinteger-array
sıralanmamış tam sayılar; bunlar yinelenebilir ve negatif, sıfır ya da çok büyük olabilir
Döndürürinteger
nums içinde eksik olan en küçük pozitif tam sayı

Kısıtlar

  • 1 ≤ nums.length ≤ 104
  • -109 ≤ nums[i] ≤ 109
  • Değerler belirli bir sırada değildir ve tekrarlanabilir.

Örnekler

Girdi
nums = [5, -2, 1, 3, 2, 9]
Çıktı
4
Açıklama
1, 2 ve 3 dizide bulunuyor, 4 ise bulunmuyor; dolayısıyla cevap 4. Daha küçük bir değer eksik olduğunda 5 ve 9 önemli değildir.
challenge icon

Ek soru

O(n) zamanda ve yalnızca O(1) ek bellek kullanarak yanıtı bulabilir misin?

Kodu sıfırla
def firstMissingPositive(nums):
    # Kodu buraya yazın

Test #1

Test #2

Test #3

Argüman

nums = [5, -2, 1, 3, 2, 9]

Beklenen Çıktı

4