CodeBlanks Logo Icon CodeBlanks

Bubble sort mantığı

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

solution.py
def bubble_one_pass(arr):
    # Bir geçiş yap

Örnek çözüm

solution.py
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

Soru
İki elemanı değiştir: arr[j], arr[j+1] = arr[j+1], ____
Cevap
İ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

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