Daima iki sayı birbiri ile karşılaştırılır. Sayılar küçükten büyüğe sıralanacağı için küçük sayı sola gelir. Peki nasıl gelir? Swap denilen yer değiştirme işlemi yapılır. Swap mantığı sıralama algoritmalarında çok önemlidir ve mutlaka öğrenilmesi gerekir.
Swap nedir diye merak ediyorsanız mutlaka ilgili
makalemize göz atın.
Adım Adım Bubble Sort Örneği
Öncelikle acı gerçeği söylüyoruz, Bubble Sort Aptal bir algoritmadır. Bunu şimdi siz de göreceksiniz, hemen 5 adet sayı sallayalım. Sayılarımız;
23 11 57 9 17 61
olsun.
Bubble Sort 1. Geçiş
1. adım: 23 11 sayıları karşılaştırılır. Düşük indisin değeri sonrakinden büyük olduğu için yer değiştirme yapılur. (23 ile 11 yer değiştiriyor)
11 23 57 9 17 61
2. adım: 23 ve 57 sayıları karşılaştırılır. 23 57'den küçük olduğu için sıkıntı olmaz. Swap işlemi yapılmaz.
11 23 57 9 17 61
3. adım: 57 ve 9 sayıları karşılaştırılır. 9 sayısı 57'den küçük olduğu için swap işlemi yapılır.
11 23 9 57 17 61
4. adım: 57 ve 17 sayıları karşılaştırılır. 17 57'den küçük olduğu için swap işlemi yapılır.
11 23 9 17 57 61
5. adım: şimdi 57 ile 61 sayıları karşılaştırılır. swap işlemi yapılmaz, çünkü 57 zaten 61'den küçük.
11 23 9 17 57 61
bu sadece ilk geçişti. teorik olarak 6 geçiş gerçekleşebilir. Bunları tek tek yazmaya gerek duymuyorum. Dizi sıralı oluncaya kadar aynı mantık uygulanır. Dizi sıralı olduğunda durur. Yani birinci geçişteki mantık dizi sıralı oluncaya kadar diğer geçişlerde de uygulanmalıdır. Teorik olarak en kötü durumda 6 geçiş sağlanabilir. Burada 5 adım gerçekleşmektedir. Yani her geçişte (iteration) n-1 adım gerçekleşmektedir. Bunu unutmayın, kod yazarken yardımı olacak ;)