Arama uygulaması
- Algoritmalar kursu
- Başlangıç
- Ders 14/80
- 4 dk
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
def count_value(arr, target):
# Geçişleri sayÖrnek çözüm
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ü
Dizide eşitlik: if arr[i] == ____
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.