Gnome Sıralaması (Gnome Sort) Algoritma Mantığı ve Uygulaması

Uzun bir aradan sonra s?ralama algoritmalar?na kald???m?z yerden devam edelim istedim. Bu yaz?mda Gnome (sözlük kar??l???: cüce) S?ralamas?ndan bahsedece?im. Kabarc?k s?ralamas?na oldukça benzerli?i var. Anla??lmas? çok zor olmayacakt?r.

Çok fazla bilgi bulunmamakla birlikte kar??la?t???m bir bilgiyi de payla?ay?m: algoritma 2000 y?l?nda, Hamid Sarbazi-Azad taraf?ndan bulunmu?tur. Eski ad? Stupid Sort (Aptal S?ralamas?) imi?. Bkz: Wikipedia

Örnek say? dizimizi de verelim: 2, 4, 48, 12, 56

Algoritmam?z ?u yolu izliyor:

  1. 1 indisli ile 0 indisli elemanlar?m?z? al?yor ve kar??la?t?r?yor.
  2. üst indisteki eleman büyük oldu?u sürece geriye dönmeden devam eder.
  3. Fakat ilerleyen s?ralarda küçük say?yla kar??la??ld???nda geriye do?ru döner ve o küçük say?n?n yerini kar??la?t?rarak bulur.
  4. Sonra tekrar kald??? indisten devam eder. Bu döngü sonunda dizimiz küçükten büyü?e do?ru s?ralam?? oluruz.

Daha ak?lda kal?c? olmas? aç?s?ndan sizlere buldu?um bir animasyonu payla?ay?m:

Sorting_gnomesort_anim

Uygulama da nas?l olacak bir de ona bakal?m;

C Ç?kt?s?:

gnomesortcpp

C Dili için Kaynak Kod

 Java Ç?kt?s?:

gnomesortjava

Java Dili için Kaynak Kod

Bu yazı Algoritma kategorisine gönderilmiş ve , , , , ile etiketlenmiş. Kalıcı bağlantıyı yer imlerinize ekleyin.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir