10.4 Sıralama (Sorting)

10.4   Sıralama (Sorting)

Bazı uygulamalarda bir grup sayının büyükten küçüğe, veya küçükten büyüğe, doğru sıralanması gerekebilir. Bu tip sıralama problemleri için çeşitli algoritmalar geliştirilmiştir. Sıralama mantığını anlamadan önce bir dizinin en büyük (veya en küçük) elemanının nasıl bulunduğunu inceleyelim. Program 10.3, bir dizinin en büyük elemanını bulup ekrana yazar.

Program 10.3: Bir dizinin en büyük elemanının bulunuşu

ÇIKTI

 

En büyük sayıyı bulan bu algoritma oldukça kolaydır. 12. satırda eb = a[0]; ataması ile dizinin ilk elemanının en büyük olduğu varsayılır. Daha sonra büyüğe rastladıkça (15. satır) eb = a[k]; ile eb değişmektedir.

Program 10.3 bir dizinin en büyük elemanını bulur. En büyük elemanın kaçıncı indis (eleman) olduğu sorgulanmak istendiğinde: programdaki koşul yapısını aşağıdaki gibi değiştirmek yeterlidir. eb değiştikçe, i değişkeni en büyük elemanın indisini tutar.

n elemanlı bir dizinin, elemanlarını büyükten küçüğe doğru sıralamak için çok popüler iki algoritma aşağıda verilmiştir[2].

Seçerek Sıralama (Selection Sort):
En büyük elemanı bul başa koy biçimindeki sıramadır. Algoritmanın uygulaması Program 10.4’de gösterilmiştir.
Bu algoritmada kullanılan kombinasyon sayısı (algoritmanın karmaşıklığı): n*(n-1)/2 dir.

Program 10.4: Seçerek Sıralama (Selection Sort) Algoritması

ÇIKTI

 

Kabarcık Sıralama (Bubble Sort):
Yanyana elemanları karşılaştırarak yer değiştir biçimde sıralamadır. Algoritmanın uygulaması Program 10.5’de gösterilmiştir.
Bu algoritmanın karmaşıklığı: (n-1)2 dir.

Program 10.5: Kabarcık Sıralama (Bubble Sort) Algoritması

ÇIKTI

 

Bir cevap yazın

This site uses Akismet to reduce spam. Learn how your comment data is processed.