Bir Kabarcık Sıralaması Nedir?

Bir kabarcık dizilimi veya batan diziliş, öğeleri değiş tokuş etmek ve karşılaştırmak için listede çalışarak sıralamaya göre sıralayan bir algoritmadır. İşlem, bir listenin doğru sırada olması için birkaç kez yapılabilir. Sıralama, bir içecekte kabarcıklar gibi sürekli olarak listenin en üstüne çıkan küçük öğelerden adını alır. Küçük listelere düzen getirmek için en sık kullanılır.

Kabarcık sıralama, listenin en başından itibaren düzenli olarak çalışır. İlk elemanı ikincisi ile karşılaştırarak başlayacak ve gerektiğinde bunları değiştirecektir. Ardından listede devam edecek ve sıra dışı bir şey bulduğunda tekrar takas yapacaktır. Algoritma her takas yaptığında, işlem listenin başından ya da altından tekrar başlatılır.

Kabarcık türleri, sıralama algoritmalarının karşılaştırma grubundandır. Bu algoritma türü, aynı anda iki elementi çalıştırarak, iki değerin hangisinin daha yüksek olduğunu veya eşit olup olmadıklarını çift bazında belirleyerek belirler. Bu tür bir sıralama, bir veri kümesinin sınırlı bir görünümünü sağlayabilir, ancak aynı zamanda bu kümenin öğelerinin ince ayarını yapmayı da kolaylaştırabilir. Karşılaştırma grubundaki diğer algoritma türleri arasında hızlı, birleştirme, kokteyl ve döngü türleri bulunur.

Ekleme noktası adı verilen başka bir basit karşılaştırma sıralama algoritmasının, benzer şekilde basit bir konsepte dayanırken daha verimli çalıştığına inanılmaktadır. Üstten yeniden sıralanan ürünler yerine, tüm set doğru bir şekilde sıralanana kadar birbirlerine göre sırayla yerleştirilirler. Pek çok durumda, bu sıralama hem eğitim müfredatındaki hem de yaygın kullanımdaki kabarcık sıralamasının yerini almıştır.

Kabarcık sıralama algoritmasının kullanımı ve anlaşılması kolay olsa da, yalnızca küçük listeler için pratik olma eğilimindedir. Hız ve verimlilik, listedeki ürün sayısında artışla azalır. Pek çok programcı, bu nispeten eski yöntemi, daha verimli makineler olmadan önce oluşturulduğundan, daha yeni bilgisayar sistemleriyle kullanmayı zor bulmaktadır.

Kabarcık türünün verimliliğini artırmak için kullanılabilecek bazı yöntemler vardır. En etkili olanı, listenin en büyük öğeleri işlemin başında yer alırsa algoritmanın daha düzgün çalıştığı bir yöntem gibi görünmektedir. Bu temeli kurarak, listenin geri kalanını sipariş etmek için daha az geçiş yapmanız gerekebilir. Bu sipariş yöntemi algoritma koduna yazılabilir.