Kabarcık Sıralama Algoritması (Bubble Sort)

Bubble Sort (Kabarcık Sıralaması) Java Kodları

Kabarcık sıralaması en basit sıralama algoritmalarından biridir ve anlaşılması gerçekten sezgiseldir. Bitişik öğeleri karşılaştırırız ve sıralarının yanlış olup olmadığına bakarız. Direkt örnek üzerinden sizlere anlatmaya çalışacağım.

Aşağıdaki örnekle Bubble Sort’un çalışmasını anlayalım.

Kabarcık Sıralama Nasıl Çalışır?

Dizi [] adında şu sıralanmamış diziyi göz önünde bulundurun:

Birinci ve ikinci eleman olan Dizi [0] ve Dizi [1] ile devam ediyoruz. 14 > 33 olup olmadığını kontrol edin. Cevabımız hayır olduğu için değişim yapılmaz.

İkinci ve üçüncü eleman olan Dizi [1] ve Dizi [2] ile devam ediyoruz. 33 > 27 olduğu için değişim yapılması gerekiyor . Yani, Dizi [1] ve Dizi [2] ‘yi değiştirdik.

Böylece dizi şöyle olur:

Üçüncü ve dördüncü eleman olan Dizi [2] ve Dizi [3] ile devam ediyoruz.  33> 35 olup olmadığını kontrol edin cevabımız hayır olduğu için takas olmaz ve dizi aynı kalır.

Dördüncü ve beşinci elemanlarla devam ediyoruz, yani Dizi [3] ve Dizi [4].  35> 10 olup olmadığını kontrol edin.35>10 olduğu için Dizi [3] ve Dizi [4] ‘i değiştirdik.

Böylece, değişim sonrası dizi böyle olur:

Şimdi ikinci geçişe başlıyoruz. Yani başa dönüyoruz.

Birinci ve ikinci eleman olan Dizi [0] ve Dizi [1] ile devam ediyoruz. 14> 27 olup olmadığını kontrol edin. Doğru olmadığı için takas olmaz ve dizi aynı kalır.

Şimdi ikinci ve üçüncü eleman olan Dizi [1] ve Dizi [2] ile devam ediyoruz. 27> 33 olup olmadığını kontrol edin.Doğru olmadığı için yine takas olmaz ve dizi aynı kalır.

Şimdi üçüncü ve dördüncü eleman olan Dizi [2] ve Dizi [3] ile devam ediyoruz. 33> 10 olup olmadığını kontrol edin.Doğru olduğu için Dizi [2] ve Dizi [3] ‘ü değiştirdik.

Böylece, değişim sonrası dizi böyle olur:

Böylece, İkinci En Büyük elemanın son (ikinci son) konumuna ulaştığı ikinci geçişin sonunu işaretler.

Benzer şekilde,

Üçüncü geçişten sonra, üçüncü en büyük eleman dizideki üçüncü son konumda olacaktır. Dördüncü geçişten sonra, dördüncü en büyük eleman dizideki son konumda olacaktır.

N’inci geçişten sonra, n’inci en büyük eleman (en küçük eleman) dizideki ilk konumda (1. konum) olacaktır, burada ‘n’ dizinin boyutudur.

Tüm geçişleri yaptıktan sonra dizinin sıralanacağını kolayca görebiliriz.

Böylece, sıralanmış dizi şöyle görünecektir:

Bubble Sort (Kabarcık Sıralaması) Java Kodları

int dizi[] = { 10, 14, 27, 33, 35 };
    int temp;
    for (int i = 0; i < dizi.length; i++) {
        for (int j = dizi.length - 1; j > i; j--) {
            if (dizi[j - 1] > dizi[j]) {

                temp = dizi[j - 1];
                dizi[j - 1] = dizi[j];
                dizi[j] = temp;
            }
        }
    }