Makale Hakkında

Bu makale Bubble Sort (kabarcık sıralama) algoritması ile ilgilidir. Bubble Sort algoritması ile ilgili tanımları, sıralama yapılacak dizinin sıralanmasında Bubble Sort algoritmasının nasıl kullanıldığını ve örnek olması açısından matlab paket programı üzerinde yazılmış kaynak kodları içermektedir. Ayrıca pratik olması açısından makelenin sonunda konu ile ilgili birkaç örnek uygulama verilmiştir. Bu uygulamaları kendiniz yaparak çözümünüzü bizimle paylaşabilirsiniz.

Bubble Sort Algotirması Nedir?

Bubble Sort (kabarcık sıralama) algoritması basit bir sıralama algoritmasıdır. Her programcının mutlaka bilmesi gereken bir algoritmadır ve hemen hemen herkes tarafından da zaten bilinmektedir. Bazı kaynaklarda Sinking Sort ya da Comparison Sort olarak da isimlendirilebilir. Performans bakımından daha iyi algoritmalar olmasına rağmen basit olması ve kolay uygulanabilir olması nedeniyle en çok bilinen ve en çok kullanılan sıralama algoritmalarındandır.

Temeli çok basit olan Bubble Sort algoritması bir listede bulunan bitişik eleman çiftlerini teker teker kendi aralarında karşılaştırma yaparak yanlış sıralanmış çiftleri kendi arasında değiş tokuş (swap) yapan bir sıralama algoritmasıdır. Sıralama işlemi değiş tokuş tamamlanıp listenin tamamında takas işlemi bitene kadar devam etmektedir.

Bu makalede yayımlanan Bubble Sort algoritmasını yeniden inşa ederek int, string, char veya structure gibi birçok veri tiplerinde kullanılabilir hale getirebilirsiniz. Elde ettiğiniz algoritma tasarımı ile istediğinz veriler arasında sıralam işlemi yapabilirsiniz. Örneğin bir sınıf listesinde öğrencileri aldıkları notlara göre veya isimlerini temel alarak alfabetik sıralama yapabilirsiniz.



Bubble Sort (Kabarcık Sıralama) Algoritması nasıl çalışır?

Problem: Matlab Comment Window üzerinde bir dizi tanımlayınız. Tanımladığınız bu diziyi bubbleSort fonksiyonu kullanarak sıralama yapınız. Probleme ait istenenler şu şekildedir:

  • Matlab Comment Window üzerinde rastgele bir dizi tanımla.
  • bubbleSort isminde bir fonksiyon oluştur.
  • Bu fonksiyonu kullanarak Comment Window üzerinde test ediniz.


Bubble Sort (Kabarcık Sıralama) Algoritmasının Kullanımı

Yazdığımız Bubble Sort algoritmasını test etmek için yukarıdaki yazdığımız fonksiyonu “bubbleSort.m” ismiyle kaydedelim. Daha sonra aşağıdaki komutları Comment Window üzerinde yazarak fonksiyonu test edebiliriz. (Çalışma dizininin fonksiyonu kaydettiğimiz dizin ile aynı olmasına dikkat ediniz.)



Matlab - Bubble Sort (Kabarcık Sıralama) Algoritması
Şekil: Matlab – Bubble Sort (Kabarcık Sıralama) Algoritması

Sözde Kod (Pseudocode)





Örnek Uygulama

  • Kullanıcıdan 5 adet şehir isteyiniz ve bu şehirleri bubble sort algoritması ile sıralayınız.
  • Kullanıcıdan 10 adet negatif sayı isteyiniz ve bu sayıları bubble sort algoritması ile sıralayınız.
  • İşçilerin bilgilerinin (ad, soyad, maaş, yaş, cinsiyet) bulunduğu bir sınıf tanımlayın. Bubble sort algoritması kullanarak maaşı en yüksek olandan en küçük olana doğru sıralama yapın. Tablo şeklinde ekranda gösterin.

NOT:

Yukarıdaki örnek uygulamaların çözümünü yaparak buraya mail atabilirsiniz. Çözümleriniz kontrol edilecektir ve eğer isterseniz çözümünüz yayınlanacaktır.