CodeBlanks Logo Icon CodeBlanks

Arama uygulaması

Doğrusal aramayı sözde koda döküp indeks döndüren fonksiyon yazmayı öğrenirsin.

Arama uygulaması

Doğrusal aramayı uygulamak için bir for döngüsü ve if koşulu gerekir. Döngü her elemanı gezer, koşul eşitliği kontrol eder.

Eşitlik bulunursa return i ile indeks hemen döndürülür. Döngü bitene kadar beklenmez çünkü arama tamamlanmıştır.

Erken çıkış

Doğrusal arama, hedefi bulunca döngüden hemen çıkar. Bu, en iyi durumda O(1) süre verir: hedef ilk elemandaysa tek karşılaştırma yeterlidir.

Erken çıkış sayesinde ortalama durum O(n/2)'dir ama Big-O notasyonunda sabit çarpanlar yok sayılır, bu yüzden ortalama da O(n) yazılır.

Uygulama Değer say

count_value(arr, target) yaz. Hedefin geçtiği yerleri say ve döndür. print(count_value([1, 2, 2, 3, 2], 2)) ile 3 yazdır.

Başlangıç kodu

solution.py
def count_value(arr, target):
    # Geçişleri say

Örnek çözüm

solution.py
def count_value(arr, target):
    # Geçişleri say
    count = 0
    for x in arr:
        if x == target:
            count = count + 1
    return count
print(count_value([1, 2, 2, 3, 2], 2))

Beklenen çıktı

3

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Eşitlik kontrolü

Soru
Dizide eşitlik: if arr[i] == ____
Cevap
Dizide eşitlik: if arr[i] == target

Açıklama: target doğru.

2 Arama uygulaması: kavramları eşleştir

Kavram Anlamı
for Döngü
if Koşul
return i Bulundu
return -1 Yok

3 Hedef bulununca ne yapılır?

  • Döngüye devam edilir
  • Hata verilir
  • İndeks döndürülür Doğru cevap
  • Dizi silinir

Açıklama: İndeks döndürülür.

Başlangıç bölümündeki tüm dersler