Sıralama Algoritmaları

Basit tanımıyla bir liste halinde verilen karışık sayıları sıralamak için kullanmış olduğumuz algoritmalardır. Bu kadar basit tanımdan sonra sayıları sıralamak için neden bu kadar uğraştığımızı düşünecek olursanız nedeni şöyle; sıralama algoritmaları çoğu algoritmaların temelinde kullanılırken aynı zamanda kişilerin algoritmik düşünme yeteneğini de artıracaktır.

Çoğu algoritmaların temelinden kullanmak?

Bilgisayar bilimlerinden elimizdeki veriler çoğu zaman düzensizdir ve gelişigüzel elde edilmiştir. Bu elde ettiğimiz verileri yada veritabanından çektiğimiz bilgileri belirli bir düzen içinde görmeyi isteriz. Düzen kavramını çoğu durumda kullanılan bir kavramdır ve sıralama algoritmaları bize bu düzeni en verimli nasıl sağlayabiliriz onu önerecektir.

Algoritmik düşünme yeteneğini artırmak ?

Size elimizde 8,3,4,1,5 şeklinde bir sıralı sayılar var desem ve bunu sıralayın desem; hemen orada 1 gözümüze çarpacak ve en başa koyacağız ardından 3,4 ve böyle giderek 1,3,4,5,8 şeklinde hiç de zor olmayan bir beyin aktivitesi ile bunu başarırız. Peki bunu bilgisayara yaptırın desem?

Bilgisayar için aslolan kıyaslamadır. birbirleri ile kıyaslayıp sayıların büyüklüğünü küçüklüğüne bulacağız. Tıpkı beynimizde yaptığımız ve farketmediğimiz şekliyle.

Velhasıl siz bunların nasıl kıyaslanarak sıralanacağını düşündüğünüzde muhtemelen bir iki yol bulacaksınız. Ama aşağıda sıralama için oldukça farklı algoritmalar var ve bunları incelemenizi tavsiye ederim.

Zamanla aşağıdaki sıralama algoritmalarının tek tek içeriğine bakacağız.

  • Araya sokma sıralaması (Insertion Sort)
  • Seçerek Sıralama (Selection Sort)
  • Hızlı Sıralama (Quick Sort)
  • Birleştirme Sıralama (Merge Sort)
  • Yığın Sıralama (Heap Sort)
  • Sayarak Sıralama (Counting Sort)
  • Kabarcık Sıralama (Bubble Sort)
  • Taban Sıralama (Radix Sort)
alierbey | 09/01/2017

Leave a Reply