C Kitabı
Buraya açıklama gelecektir
Buraya açıklama gelecektir
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Bazı uygulamalarda bir grup sayının büyükten küçüğe, veya küçükten büyüğe, doğru<br />
sıralanması gerekebilir. Bu tip sıralama problemleri için çeşitli algoritmalar geliştirilmiştir.<br />
Sıralama mantığını anlamadan önce bir dizinin en büyük (veya en küçük) elemanının nasıl<br />
bulunduğunu inceleyelim. Program 10.3, bir dizinin en büyük elemanını bulup ekrana yazar.<br />
Program 10.3: Bir dizinin en büyük elemanının bulunuşu<br />
01:<br />
02:<br />
03:<br />
04:<br />
05:<br />
06:<br />
07:<br />
08:<br />
09:<br />
10:<br />
11:<br />
12:<br />
13:<br />
14:<br />
15:<br />
16:<br />
17:<br />
18:<br />
19:<br />
20:<br />
21:<br />
ÇIKTI<br />
/* 10prg03.c<br />
Bir dizinin en büyük elemanını bulup ekrana<br />
yazar */<br />
#include <br />
int main(void)<br />
{<br />
int a[10] = {100, -250, 400, 125 ,550, 900,<br />
689, 450, 347, 700};<br />
int k, eb;<br />
/* ilk eleman en büyük kabul ediliyor */<br />
eb = a[0];<br />
for(k=1; keb ) eb = a[k];<br />
printf("En buyuk eleman = %d\n",eb);<br />
return 0;<br />
}<br />
En buyuk eleman = 900<br />
En büyük sayıyı bulan bu algoritma oldukça kolaydır. 12. satırda eb = a[0]; ataması ile<br />
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)<br />
eb = a[k]; ile eb değişmektedir.<br />
Program 10.3 bir dizinin en büyük elemanını bulur. En büyük elemanın kaçıncı indis (eleman)<br />
olduğu sorgulanmak istendiğinde: programdaki koşul yapısını aşağıdaki gibi değiştirmek<br />
yeterlidir. eb değiştikçe, i değişkeni en büyük elemanın indisini tutar.<br />
for(k=0; k eb ){<br />
eb = a[k];<br />
i = k;<br />
}<br />
}<br />
n elemanlı bir dizinin, elemanlarını büyükten küçüğe doğru sıralamak için çok popüler iki<br />
algoritma aşağıda verilmiştir[2].<br />
Seçerek Sıralama (Selection Sort):<br />
En büyük elemanı bul başa koy biçimindeki sıramadır. Algoritmanın uygulaması Program