Sıralama Algoritması Nedir?

Sıralama Algoritması Nedir? Merhaba arkadaşlar, Uzun zamandan sonra gene döndük dolaştık geldik algoritmaya. En başında da belirtmiştim algoritmaya bir defa sardınız mı daha da bırakamazsınız. Hayatın başlangıcı, ilerleyişi ve son bulması da algoritma olduğundan hayatımız olmuş algoritma 🙂 Neyse algoritmaya bu kadar iltifat yeteri sanırım. Sıralama algoritmasından hiç bahsetmedik diye düşünüyorum buna istinaden bugünde karşıma çıktığından Ötürü buraya yazma gereği duydum.     Sıralama algoritması, bilgisayar bilimlerinde ya da matematikte kullanılan, verilen bir listenin elemanlarını belirli bir sıraya sokan algoritmadır. En çok fazla uygulanan sıralama türleri, sayı büyüklüğüne göre sıralama ve alfabetik sıralamadır. Sıralama işleminin üretken yapılması, arama ve birleştirme algoritmaları benzeri çalışması için sıralanmış dizilere İhtiyaç duyan algoritmaların başarımının yüksek olması için önemlidir. Sıralama algoritmaları bilgisayarlarda tutulan verilerin düzenlenmesini ve insan kullanıcı anlamında daha sorunsuz algılanmasını da sağlar.   Sıralama algoritmaları, tanımı aşırı yalın olmasına rağmen çözümü çok fazla karmaşık olan bir işi gerçekleştirdikleri için, üstünde en fazla araştırma yapılan bilgisayar bilimi konularından biridir. Çoğu şahıs sıralama sorununu çözülmüş bir sıkıntı şekilde görse de, yeni sıralama algoritmaları üstünde araştırmalar sürmektedir. sorun kütüphane sıralaması ilk şekilde 2004 yılında ortaya atılmıştır. Sıralama algoritmaları, sayılarının çok fazla olması ve ayrıcalıklı yaklaşımlar sunmaları sebebi ile bilhassa giriş düzeyindeki bilgisayar bilimleri derslerinde büyük O gösterimi ve veri yapıları bu gibi temel algoritma kavramlarının açıklanması amacıyla sıkça rastlanan olarak kullanılırlar.   Sıralama Algoritmaları   Hesaplama Karmaşıklığı: Dizideki öğelerin karşılaştırılmasının en iyi, ortalama ve en fena başarımının dizinin boyutu (n) cinsinden gösterilmiş halidir. Olağan uygulamalarda sıralama algoritmalarının iyi vaziyet başarımı O(n log n) ve fena vaziyet başarımı is Ω(n²)’dir. Bir sıralama algoritmasının istenen karmaşıklığı O(n)’dir. Yalnızca soyut bir anahtar karşılaştırması oluşturan tüm sıralama algoritmaları en fena halde her süre Ω(n log n) karşılaştırma yaparlar.   Yer Değiştirme Karmaşıklığı: Yerinde sıralama algoritmaları için uygulanan algoritmadır.   Bellek ve Diğer Donanım Kaynaklarının Kullanımı: Bazı sıralama algoritmaları dizinin içerdiği öğelerin dizinin saklandığı alanda sıralar. Böylece sıralanan öğeler dışında sırf O(1) ya da O(log n)’lik bir ek hafıza sahası gerekir. Bazı algoritmalar ise verinin geçici şekilde saklanması için dizinin tutulduğu yerlerin dışında ek hafıza sahalarına İhtiyaç duyar.   Özyineleme: Bazı algoritmalar ya özyinelemeli ya da özyinelemesiz çalışırken, birleştirmeli sıralama bu gibi bazı algoritmalar iki olarak de uygulanabilir.   Kaşılaştırma Sıralaması Olup Olmama: Bir karşılaştırma sıralaması sıralanacak veriyi, bir karşılaştırma işlemi kullanarak, karşılaştırarak inceler.   Genel Yöntem: Araya sokma, değiştirme, seçme, birleştirme vb. Değiştirme sıralamalarına kabarcık sıralaması ve hızlı sıralama Örnek şekilde gösterilebilir. Yığın sıralaması ise seçme sıralamalarındandır.   Kararlılık   Kararlı sıralama algoritmaları sıralanacak dizinin içerisinde değerleri birbirine eşit olan öğerlerin birbirlerine göre olan konulmlarını korur. Başka bir deyişle, bir sıralama algoritması kararlı olduğunda, Şayet R ve S benzeri içerdiği kıymet tıpkı olan iki öge bulunduran asıl dizide, R, S’ den herşeyden önce geliyorsa, sıralanmış dizide de R, S’den herşeyden önce olur. Dizinin içerisinde birbirine eşit değerler içeren öğeler birbirlerinden ayırt edilemiyorsa (örneğin sayılar ya da harfler benzeri değerler öğenin kendisini sağlıyor ise) kararlılık bir sıkıntı değildir.   Kararsız sıralama algoritmaları sıralama anahtarlarının değerleri tıpkı olan öğelerin sıra içindeki sırasını değiştirebilir fakat kararlı sıralama algoritmaları asla değiştirmez. Kararsız sıralama algoritmaları bilhassa kararlı olacak olarak uygulanabilir. Bunu yapmanın bir yolu yapay şekilde anahtar karşılaştırmasını anahtlarının değerleri birbirine eşit olan iki öğenin durumunu belirlemek için asıl listedeki konumlarını ölçüt şekilde kullanacak olarak genişletmektir. Ancak asıl dizideki öğre sırasının hatırlanması çoğu süre ek gizleme sahası gerektirir.


Yapılan Yorumlar
Erdem OFLAZ

Bir mum, diğer mumu tutuşturmakla ışığından bir şey kaybetmez.
 Kategoriler
 Popüler yazılar