Kayıt Ol

Giriş

Şifremi Kaybettim

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

soru ekleme

Soru sormak için giriş yapmalısınız.

Giriş

Kayıt Ol

.........

Sıralama Algoritmaları C#’da Kullanımı

Sıralama Algoritmaları C#’da Kullanımı

1.Cüce Sıralama (Gnome Sort)

Cüce sıralaması (İngilizcesi: Gnome sort), bilgisayar bilimlerinde kullanılan araya sokmalı sıralamaya benzer bir sıralama algoritmasıdır.

Cüce sıralaması (İngilizcesi: Gnome sort), bilgisayar bilimlerinde kullanılan araya sokmalı sıralamaya benzer bir sıralama algoritmasıdır. Ara sokmalı sıralamadan farkı kabarcık sıralaması yönteminde olduğu gibi, bir elemanın sıralanan dizideki yerine birçok yer değiştirme yoluyla gelmesidir. Cüce Sıralaması adı algoritmanın yönteminin mitolojideki Hollanda cücelerinin (gnome) bir dizi çiçek saksısını sıraya diziş biçimine benzemesinden kaynaklanmaktadır.

Kod örneği:

 

2.Güvercin Yuvası Sıralaması (Pigeonhole Sort)

Güvercin yuvası sıralaması, n adet öğeyi N adet “güvercin yuvası” (sıralanacak öğelerin alabileceği olası değerlerin sayısı) ile (O(n + N)) karmaşıklığıyla sıralayan bir sıralama algoritmasıdır.

Güvercin yuvası sıralaması, n adet öğeyi N adet “güvercin yuvası” (sıralanacak öğelerin alabileceği olası değerlerin sayısı) ile (O(n + N)) karmaşıklığıyla sıralayan bir sıralama algoritmasıdır. N O(n) olduğunda algoritma doğrusal zamanda çalışır. Bir sıralama algoritmasının dizideki öğeleri sıralamak için her bir öğeye en az bir kere bakması zorunlu olduğundan doğrusal zaman sıralama algoritmasından bağımsız olarak erişilebilecek en iyi sonuçtur.

Güvercin yuvası algoritması aşağıdaki biçimde çalışır:

  1. Başlangıçta boş “güvercin yuvalarının” bulunduğu her bir arama anahtarı aralığına bir güvercin yuvası düşecek biçimde bir dizi oluştur.
  2. Sıralanacak dizinin üzerinden geçerek bütün öğeleri ilgili güvercin yuvasına yerleştir.
  3. Güvercin yuvası disizinin üzerinden sırayla gerçerek boş olmayan bütün yuvalardaki öğeleri asıl diziye aktar.

Güvercin yuvası sıralaması hızlı çalışması için gereken durumların nadiren oluşması ve diğer daha esnek ve neredeyse aynı hızda çalışan algoritmaların kullanımı daha kolay olduğu için pek kullanılmaz. Özellikle kova sıralaması güvercin yuvası sıralamasının uygulamada daha fazla kullanılan bir türüdür.

Kod örneği:

 

  • Büyük bir dizide hepsini sıraladığımıda en hızlı quick sort sıralar sonra merge sort sıralar. Sonra sırasıyla Pigeonhole Sort sıralar ve en yavaş Gnome Sort sıralar.

Karşılaştırma kodu:

 

Hakkında Hilal Saim

Namık Kemal Üniversitesi/Bilgisayar Mühendisliği

Beni Takip Et

Leave a reply

*