28.02.2015 Views

C Kitabı

Buraya açıklama gelecektir

Buraya açıklama gelecektir

SHOW MORE
SHOW LESS

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

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!