Kabarcık Sıralaması (Bouble Sort) Algoritma Mantığı ve Uygulaması

bubble-fig-7

Bu sıralama algoritmasında mantık gayet basittir. Verilen dizideki elemanların üzerinde dolaşılır. Dolaşılırken sırayla ardışık iki dizi elemanını birbirleriyle karşılaştırılır.

Örneğin; Dizimiz şu şekilde olsun : 5, 2, 8, 6, 3, 7, 1, 0, 4, 9
Burada önce birinci ve ikinci eleman karşılaştırılır 5 > 2 olduğundan iki eleman birbirleriyle yer değiştirir.
Dizimizin yeni hali; 2, 5, 8, 6, 3, 7, 1, 0, 4, 9
Bu sefer ikinci eleman ile üçüncü eleman karşılaştırılır. 5 > 8 olmadığından dolayı yer değiştirme işlemi uygulanmaz. Bir sonraki ardışıklara geçilir.

İşlem böyle devam eder. Ta ki sıralama düzenli hale gelene kadar. Her turda eldeki sayıların en büyük elemanı en sona atılır. Tabi ki bunun tam tersi de geçerlidir.
(Büyükten Küçüğe veya Küçükten Büyüğe)
Google ve Wikipedia’dan edindiğim grafiklerle ne demek istediğimi daha rahat anlayacaksınız.

Bubble-sort-example-300px

Gelelim Kodlama kısmına;

C Kodu:

kabarcikcpp

C Dili için Kaynak Kod

 

Java Kodu:

kabarcikjava

Java Dili için Kaynak Kod

 

PHP Kodu:

kabarcikphp

PHP Dili için Kaynak Kod

Konu Sonu Notları: 
  •  Kabarcık Sıralaması devasa sıralamalarda verimsizdir. Çünkü işlem sayısı bir hayli fazlalaşır. Bu da performans düşüklüğü yaşatır.

Daha fazla bilgi için bakabileceğiniz bir kaynak: Bouble Sort – Wikipedia

 

Bu yazı Algoritma kategorisine gönderilmiş ve , , , , , , ile etiketlenmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir