Ikili Arama

Tanım

Tanım

İkili Arama, sıralı bir dizide, belirli değerin bulunmasına yönelik bir algoritmadır. Bu teknikteki her bir adımda, aranan değerin, dizinin orta değerine eşit olup olmadığı kontrol edilir. Eşit olmaması durumunda aranan değerin orta değer tarafından ikiye ayrılan kısımlardan hangisinde olduğu kontrol edilir, aranan değeri içeren kısım bir sonraki adımda arama yapılacak dizi olur ve bu sayede arama yapılan listedeki eleman sayısı her adımda yarıya indirilmiş olur.

Bu algoritma ile N elemanlı bir dizide en fazla \lceil\log_2 N\rceil karşılaştırma yaparak aranan değerin yerini bulmak mümkündür.

Örnek Kod

int dizi[1] = ;
int aranan = 12;


int bas = 0;
int son = 6;
int i;


while (bas != son)
{
 i = (bas + son)/2;
 if (dizi[2] == aranan)
  break;
 else if (dizi[3] > aranan)
  son = i;
 else
  bas = i;
}


Kaynaklar

Vikipedi

İlgili konuları ara


Görüşler

Bu konuda henüz görüş yazılmamış.
Gürüş/yorum alanı gerekli.
Markdown kodları kullanılabilir.

Ikili Arama ilgili konular

  • SEO

    Arama motoru optimizasyonu (Search Engine Optimization), arama motorlarının web sayfalarını daha kolay bir şekilde taramasına olanak sağlayan t
  • Ikili arama

    Tanım
  • Logaritmik zaman

    Logaritmik zamanda çalışan bir algoritma, bir Turing makinesinin girişin uzunluğu <math>n \,</math> ise en fazla <math>\log(n)
  • Sıralı erişim

    Bilgisayar bilimlerinde sıralı erişim, bir grup veri elemanına (bellekte, diskte veya kasette bulunan) önceden belirlenen bir sıra izlenerek bir
  • Wikia Search

    Wikia search, Wikipedia'nın önderliğinde kurulan semantik web tabanlı bir arama motorudur.
  • Treap

    == Treap (Veri Yapısı) ==Treap arama, ekleme, silme gibi temel işlemler için log(n) zamanı garanti eden dinamik bir ikili arama ağacıdır. İki
  • Dizi arama algoritması

    Dizi eşleme algoritmaları olarak da adlandırılan dizi arama algoritmaları, bir ya da birkaç dizinin (örüntü) daha büyük bir dizi ya da meti