Selection Sort (Seçmeli Sıralama) Algoritması
0

Sıralama algoritmalarına değindiğimiz makale serimizin bu bölümünde Selection Sort yani Seçmeli Sıralama algoritmasından bahsedeceğiz. Bu algoritmada  her bir iterasyonda en küçük eleman tespit edildiği için seçerek sıralama algoritması adını almıştır.

İterasyon bittiğinde yani dizinin son elemanına gelindiğinde değerler içerisinden tespit edilen en küçük değer başa alınarak birinci eleman yapılır. Sonraki iterasyonlarda ise küçük sayısı arama işlemine bir sonraki sayıdan (ikinci sayıdan, üçüncü sayıdan, dördüncü sayıdan,….n.sayıdan) başlanılarak küçükten büyüğe olacak şekilde sola kaydırılır. Yani önceki iterasyonda sıralanan işi biten eleman sonraki iterasyonlara dahil edilmez.

Hatırlatma:

Insertion Sort algoritmasında ikili ikili bakılıyor ve büyük mü küçük mü sorusu iki değer arasında yapılıp diğer elemanlara geçiliyordu. Yani sıralamayı tamamlamak için son elemana kadar gitmesine gerek kalmıyordu. Her bir iki elemana bakıp sıraladıktan sonra diğer iki elemana geçiyordu. Ancak sıralamada yer değişim için araya sokabiliyordu. 5. eleman 2. elemandan küçükse 5. elemanı 2’nin yanına sokabiliyordu.

Bubble Sort algoritmasında ise intertion sort algoritması gibiydi ancak tek kötü yanı tespit edilen küçük değer olması gerektiği sıraya o an sokulamıyordu. Kendi arasında sıralanıyor iterasyon bitiyor diğer iterasyonda tekrar bakılıyordu. Yani yine elemanlara ikili ikili bakılıyordu diyebiliriz. 5. eleman 4. elemandan küçükse kendi aralarında yer değiştiriyorlar ancak 5. eleman 2. elemandan da küçükse 5. eleman 2. eleman ile yer değiştiremiyor araya giremiyordu.

Selection Sort algoritmasında dizi içerisinde gezilip en küçük eleman bulunup 1. eleman olarak işaretlenir. Daha sonra diğerlerine bakılıp en küçük tespit edilip 2. eleman olarak işaretlenir ve bu şekilde algoritma kendisini sonlandırana kadar devam eder.

Zaman Karmaşıklığı:

İç içe iki tane loop olduğundan en iyi ve en kötü durumda yani Worst ve Best Case’de O(N^2) dir. Dizi küçükten büyüğe sıralı bile gelse tüm elemanları gezeceği için bu durum böyle olmaktadır.

Örnek:

20,15,5,1,9,13 sayı dizisini selection sort algoritması ile sıralayalım.

  1. Dizinin ilk elemanını minimum değer olarak alıp bu değerin dizinin tüm elemanları ile kıyaslanmasını sağlayalım.
  2. 20 diğer elemanlar ile kıyaslanır ve hemen yanındaki 15 daha küçük olduğundan artık yeni mininum değer 15 olur.
  3. 15 dizideki tüm eleman ile kıyaslanır 5 daha küçük olduğu görülür ve yeni minimum değer 5 olarak devam edilir.
  4. bu şekilde tüm elemanlar kontrol edilir ve her bir iterasyonda küçük değer tespiti yapılıp sıralama yapılır. Sonra ikinci iterasyona geçilir ve aynı işlemler tekrar edilir.
  5. sonuçta sıralanmış dizi elde edilir.

 

Bu konuyla ilgili sorularınızı  alt kısımda bulunan yorumlar alanını kullanarak sorabilirsiniz.

Referanslar

Algoritmalara Giriş:  Thomas H. CormenCharles E. LeisersonRonald L. RivestClifford Stein

www.mshowto.org

TAGs: Selection Sort, Sorting Algorithms,Sıralama algoritması nedir, Selection Sort nedir, Seçmeli Sıralama nedir

 

Bu İçeriğe Tepkin Ne Oldu?
  • 4
    harika_
    Harika!!
  • 1
    be_enmedim
    Beğenmedim
  • 1
    _ok_iyi
    Çok iyi
  • 0
    sevdim_
    Sevdim!
  • 0
    bilemedim_
    Bilemedim!
  • 1
    olmad_
    Olmadı!
  • 1
    k_zd_m_
    Kızdım!

Konya Teknik Üniversitesi Bilgisayar Mühendisliği Doktora programında tez dönemi öğrenciliğim devam etmektedir.İş hayatıma Vodafone'da Test Mühendisi olarak başladıktan sonra şuan bir üniversitede Sistem Uzmanı ve Siber Güvenlik Ofis Yöneticisi pozisyonunda çalışmaktayım.Başlıca uzmanlık alanlarım arasında Sistem yöneticiliği ve Siber Güvenlik gelmektedir.Asp.net ile Proje Geliştirme (2015), Bilgisayar Mühendisliğine Giriş (2020), Güvenlik Tasarım Desenleri (2022) kitaplarının yazarıyım.

Yazarın Profili
İlginizi Çekebilir

Bültenimize Katılın

Tıklayın, üyemiz olun ve yeni güncellemelerden haberdar olan ilk kişi siz olun.

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir