Bubble sort mantığı
- Algoritmalar kursu
- Başlangıç
- Ders 21/80
- 4 dk
Komşu elemanları karşılaştırıp yer değiştirerek büyük olanları sona kaydıran algoritmayı öğrenirsin.
Bubble sort mantığı
Bubble sort, bir diziyi sıralamak için komşu elemanları karşılaştırır ve yanlış sıradaysa yer değiştirir. Bu işlem dizinin sonuna kadar tekrarlanır.
Her geçişte en büyük eleman dizinin sonuna 'kabarcık gibi' yükselir. Adını bu kabarcık hareketinden alır.
Bir geçiş
Bir geçişte diziyi baştan sona gezer ve her komşu çifti kontrol edersin. Sıraları yanlışsa arr[j], arr[j+1] = arr[j+1], arr[j] ile yer değiştirirsin.
Bir geçişin sonunda en büyük eleman dizinin sonundaki yerini almıştır. Kalan elemanlar için geçiş tekrarlanır.
Uygulama Bir geçiş
bubble_one_pass(arr) yaz. Komşuları karşılaştır, yanlış sıradaysa yer değiştir. print(bubble_one_pass([3, 1, 2])) ile [1, 2, 3] yazdır.
Başlangıç kodu
def bubble_one_pass(arr):
# Bir geçiş yapÖrnek çözüm
def bubble_one_pass(arr):
# Bir geçiş yap
n = len(arr)
for j in range(n - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
return arr
print(bubble_one_pass([3, 1, 2]))Beklenen çıktı
[1, 2, 3]
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bubble sort nasıl çalışır?
- Hash kullanır
- Diziyi ikiye böler
- Minimimi bulur
- Komşuları karşılaştırır ve yer değiştirir Doğru cevap
Açıklama: Bubble sort komşuları karşılaştırır ve yer değiştirir.
2 Yer değiştirme
İki elemanı değiştir: arr[j], arr[j+1] = arr[j+1], ____
İki elemanı değiştir: arr[j], arr[j+1] = arr[j+1], arr[j]
Açıklama: arr[j] doğru.
3 Bubble sort mantığı: kavramları eşleştir
| Kavram | Anlamı |
|---|---|
Bubble sort |
Komşu karşılaştır |
Geçiş |
Baştan sona |
Yer değiştir |
Swap |
En büyük |
Sona gider |