İkili Arama(Binary Search) Algoritması C Kodu


C dili dersleri serisinin bu dersinde ikili arama algoritmasının, İngilizcesi ile binary search algoritmasının c programlama dilindeki kodlamasını yapacağız.

İkili arama "İkili Arama(Binary Search) Algoritması ve Akış Diyagramı" adlı algoritma dersinde anlattığımız gibi dizinin ardışık elemanlarını kendi arasında karşılaştırmak suretiyle aranan elemanın yerini bulan bir algoritmadı. İkili arama algoritmasını daha detaylı oğrenmek ve akış diyagramına ulaşmak icin buraya tıklayın.

Kısaca ikili arama algoritmasını tekrardan anlatmak gerekirse:

- Sıralı dizinin ortanca elemanıyla aranan elemanı karşılaştırırız.
- Dizinin buyukten kucuğe sıralı olduğunu ve aranan elemanın ortanca elemandan buyuk olduğunu varsayarsak, bu seferde dizinin baştaki yarısının ortanca elemanıyla aranan elemanı karşılaştırırız.
- Buyukse baş taraftaki 1/4 luk kısmın ortanca değeriyle, kucukse son tarafındaki 1/8 lik kısmın ortanca terimiyle tekrar karşılaştırılır.
- Bu şekilde karşılaştırmalar yapılarak aranan elemanın yerine ulaşılır.

İkili Arama(Binary Search) Algoritması C Kodu


Kaynak Kod:
PHP Code:
#include

int main()

printf("Aradiginiz elemani giriniz :"); scanf("%d",&aranan);
alt=0;
ust=boyut-1;
while(altust)

return 0;
}


Kod Analiz:

- Oncelikle dizinin boyutunu ve diziyi kullanıcıdan aldık.
- Daha sonra kullanıcıdan dizide aramasını istediği elemanı aldık.
- Ortanca elemanı y değişkenine eşitleyip do-while dongusu icerisinde kullandığımız if yapılarıyla aranan değerin ortanca değerden buyuk yada kucuk olduğunu bulduk.
- Dizinin kucukten buyuğe sıralı olduğunu ve aradığımız elemanın ortanca elemandan buyuk olduğunu varsayalım.
- Bu durumda ortanca elemanın bir fazlasını artık en kucuk eleman olarak kabul edip, en kucuk ve en buyuk yani artık ortanca ve en buyuk değer arasında başka bir ortanca eleman buluruz.
- Tersi durumda ise ortancanın bir kucuk elemanını dizinin en buyuk elemanı olarak kabul edip, yeni ortanca değeri belirleriz.
- Ortanca değer bulduğumuzda ekrana yazdırıp break komutuyla donguyu sonlandırırız.
- Bu şekilde ilerledikten aradığımız elemana ulaşırız.
- Do-while dongusu her donduğunde alt değerle ust değeri karşılaştırıp eğer alt değer ust değerden buyuk olmuşsa donguyu sonlandırırız.

Ekran Goruntuleri:





C dili dersleri serisinin bu dersinde ikili arama, İngilizcesiyle binary search algoritmasının c programlama dilinde kodlamasını yaptık.

Ayrıca "Bubble Sort Algoritması C Kodu" icin buraya tıklayın.

"İkili Arama Algoritması C Kodu" adlı bu makaleyi beğendiyseniz lutfen yorum yapmayı ve paylaşmayı unutmayın.

Kaynak: Pubtekno
__________________