Sol sağ gösterici
- Algoritmalar kursu
- Başlangıç
- Ders 54/80
- 4 dk
low ve high göstericileriyle aralığı nasıl daraltacağını öğrenirsin.
Sol sağ gösterici
İkili arama, left ve right göstericileriyle arama aralığını tanımlar. Başlangıçta left=0, right=n-1'dir.
Her adımda orta hesaplanır: mid = (left + right) // 2. Hedefe göre left veya right güncellenir.
Aralık güncelleme
Hedef arr[mid]'den büyükse left = mid + 1 yapılır: sağ yarıda aranır. Küçükse right = mid - 1: sol yarıda aranır.
+1 ve -1 eklenmesi, mid'in tekrar kontrol edilmesini önler. Bu, sonsuz döngüyü engellemek için önemlidir.
Uygulama Mid bul
find_mid(left, right) yaz. Orta indeksi döndür. print(find_mid(0, 9)) ile 4 yazdır.
Başlangıç kodu
def find_mid(left, right):
# Orta indeksÖrnek çözüm
def find_mid(left, right):
# Orta indeks
return (left + right) // 2
print(find_mid(0, 9))Beklenen çıktı
4
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Mid hesabı
mid = (left + ____) // 2
mid = (left + right) // 2
Açıklama: right doğru.
2 Sol sağ gösterici: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
left |
Sol |
right |
Sağ |
mid |
Orta |
left <= right |
Döngü koşulu |
3 Hedef arr[mid]'den büyükse ne yapılır?
- return mid
- return -1
- right = mid - 1
- left = mid + 1 Doğru cevap
Açıklama: left = mid + 1 yapılır.