Python

Python Bubble Sort Algoritması

Herkese merhaba, Python yazılarımıza kaldığımız yerden devam ediyoruz. Bu yazımızda sıralama algoritmalarından biri olan selection sort algoritmasını anlatacağım. Hadi başlayalım !

Bu makalede, Bubble Sort algoritması hakkında bilgi vereceğim ve ayrıca Python dilinde bu algoritmanın nasıl uygulanacağını göstereceğim. Bubble Sort, en basit sıralama algoritmalarından biridir ve her elemanı diğer elemanlarla karşılaştırarak sıralar.

Bubble Sort Algoritması Nedir?

Bubble Sort algoritması, elemanları sıralamak için karşılaştırmalı bir algoritmadır. İlk olarak, dizideki ilk eleman, bir sonraki elemanla karşılaştırılır. Eğer bir sonraki eleman daha küçükse, bu iki elemanın yerleri değiştirilir. Bu işlem, dizinin sonuna kadar tekrarlanır. Bu sayede, en büyük eleman dizinin sonuna doğru hareket eder.

Daha sonra, bir sonraki eleman ve ondan sonraki eleman karşılaştırılır ve bu işlem, dizinin sonuna kadar tekrarlanır. Bu işlem, dizinin sıralanana kadar devam eder. Adından da anlaşılacağı gibi, bu algoritma bir baloncuk gibi davranır ve her turda en büyük elemanı yukarı doğru iterek sıralama yapar.

Bubble Sort algoritmasının en kötü durumda, yani n elemanlı bir dizi için sıralanması n^2 kere karşılaştırma yapar. Bu, büyük boyutlu dizilerde çok fazla zaman alabilir ve bu nedenle Bubble Sort algoritması, genellikle daha hızlı sıralama algoritmaları yerine tercih edilmez.

Bubble Sort Algoritması Kodu

Python’da Bubble Sort algoritmasını uygulamak oldukça basittir. Aşağıda, Python dilinde Bubble Sort algoritması için bir örnek kod verilmiştir:

def bubble_sort(arr):
    n = len(arr)
    
    # Dizideki tüm elemanları karşılaştırarak sıralama yap
    for i in range(n):
        
        # Her elemanı bir sonraki elemanla karşılaştırarak sırala
        for j in range(n - i - 1):

            # Eğer bir sonraki eleman, şimdiki elemandan daha küçükse, yerlerini değiştir
            if arr[j] > arr[j + 1]:
                arr[j], arr[j + 1] = arr[j + 1], arr[j]
                
    return arr

Yukarıdaki kod, bir dizi alır ve Bubble Sort algoritmasını kullanarak sıralar. İlk olarak, dizi boyutunu belirlemek için len fonksiyonu kullanılır. Ardından, iki tane for döngüsü kullanarak her elemanı diğer elemanlarla karşılaştırır ve sıralar.

Kodun Çalıştırılması

Bubble Sort algoritmasının çalışma mantığını anlamak için, yukarıdaki kodda her adımın ne yaptığını gözlemleyebilirsiniz. Aşağıda, Bubble Sort algoritması için bir örnek kullanarak nasıl çalıştığını gösteren bir kod daha verilecektir:

arr = [64, 34, 25, 12, 22, 11, 90]
sorted_arr = bubble_sort(arr)
print("Sıralanmış dizi:")
for i in sorted_arr:
    print(i)

Kod Açıklamaları

Bu kod, önce bir dizi oluşturur ve ardından bu diziyi Bubble Sort algoritmasını kullanarak sıralar. Son olarak, sıralanmış diziyi ekrana yazdırır.

Yukarıdaki örnekte, ilk turda 64 ve 34 elemanları karşılaştırılır ve yerleri değiştirilir. Daha sonra, 64 ve 25 elemanları karşılaştırılır ve yerleri değiştirilir. Bu işlem, dizinin sonuna kadar devam eder. İlk tur bittiğinde, en büyük eleman olan 90 dizinin sonuna taşınmıştır.

İkinci turda, 34 ve 25 elemanları karşılaştırılır ve yerleri değiştirilir. Daha sonra, 64 ve 22 elemanları karşılaştırılır ve yerleri değiştirilir. Bu işlem, dizinin sonuna kadar devam eder. İkinci tur bittiğinde, dizinin son iki elemanı sıralanmıştır.

Üçüncü turda, 34 ve 12 elemanları karşılaştırılır ve yerleri değiştirilir. Daha sonra, 64 ve 11 elemanları karşılaştırılır ve yerleri değiştirilir. Bu işlem, dizinin sonuna kadar devam eder. Üçüncü tur bittiğinde, dizinin son üç elemanı sıralanmıştır.

Bu işlem dizinin sonuna kadar tekrar eder ve sonuç olarak sıralanmış bir dizi elde edilir.

Sonuç

Sonuç olarak, Bubble Sort algoritması, basit bir sıralama algoritmasıdır ve her elemanı diğer elemanlarla karşılaştırarak sıralama yapar. Ancak, büyük boyutlu dizilerde çok fazla zaman alabilir ve daha hızlı sıralama algoritmaları tercih edilir. Python’da Bubble Sort algoritmasını uygulamak oldukça basittir ve yukarıdaki örnek kodlar, bu algoritmanın nasıl uygulanacağını gösterir.

Evet Python ile selection sort algoritması bu şekilde yazılmakta. Tüm Python yazılarımıza buraya, diğer sıralama algoritmaları ile ilgili yazılarımıza buraya tıklayarak ulaşabilirsiniz. Herkese hayırlı günler.

Skorumuz:
Oy Vermek İçin Tıklayın
[Toplam: 0 Ortalama: 0]

Bir cevap yazın

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

Başa dön tuşu