Python Bogo 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 bogo sort algoritmasını anlatacağım. Hadi başlayalım !
Table of Contents
Bogo Sort Algoritması
Bogo sort, en kötü sıralama algoritmalarından biridir. Sıralanacak olan elemanları rastgele bir şekilde karıştırır ve eğer listenin sıralı olmadığı tespit edilirse bu işlem tekrarlanır. Sıralı listelerde bile sonsuz döngülere sebep olabilir. Bu nedenle bogo sort, sadece eğlence amaçlı kullanılabilecek bir algoritmadır.
İşlevi, sıralanacak olan listeyi parametre olarak alır ve listenin sıralı olup olmadığını kontrol eder. Eğer liste sıralı değilse liste elemanlarını rastgele bir şekilde karıştırır ve işlemi tekrarlar. Bu işlem sıralı bir liste elde edilene kadar devam eder.
Python Kodu
Aşağıda Python dilinde bogo sort algoritması ile ilgili örnek bir kod yer almaktadır:
import random
def bogo_sort(lst):
while not is_sorted(lst):
random.shuffle(lst)
return lst
def is_sorted(lst):
for i in range(len(lst) - 1):
if lst[i] > lst[i+1]:
return False
return True
# Test
arr = [4, 2, 1, 3, 5]
print(bogo_sort(arr))
Kod Açıklamaları
Yukarıdaki kodda bogo_sort fonksiyonu, verilen listenin sıralanmış olup olmadığını kontrol etmek için is_sorted fonksiyonunu kullanır. Eğer liste sıralanmamışsa random.shuffle fonksiyonu kullanarak liste elemanlarını rastgele bir şekilde karıştırır.
is_sorted fonksiyonu, verilen listenin sıralı olup olmadığını kontrol eder. Eğer listenin iki elemanı arasındaki sıralama doğru değilse, fonksiyon False değerini döndürür.
Sonuç
Bogo sort algoritması, daha verimli sıralama algoritmalarının yanında kullanılmayacak kadar yavaş ve verimsiz bir algoritmadır. Bu nedenle, gerçek dünya uygulamalarında tercih edilmez.
Evet Python ile bogo 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.