Programlama Ve Algoritmalar Deneme Sınavı Sorusu #745769

Elemanları [1 5 6 12 15 20 43] olan ve elemanlarının konumları 1 ile 7 arasında değişen dizi üzerinde ikili arama yapılarak 3 sayısı aranacaktır. Bu arama yapılırken 2. karşılaştırma adımında ilk, orta ve son elemanların konum bilgileri ne olur?


İlk: 1, Orta:2, Son:7

İlk: 1, Orta:2, Son:5

İlk: 1, Orta:2, Son:3

İlk: 4, Orta:5, Son:6

İlk: 5, Orta:6, Son:7


Yanıt Açıklaması:

İkili arama, sıralı diziler üzerinde arama yapmak için kullanılan bir algoritmadır. Üzerinde arama yapılacak olan dizi sıralı durumda değilse, bu algoritmanın doğru çalışabilmesi için öncelikle dizinin sıralı hale getirilmesi gerekir. İkili arama algoritması çalışmaya başladığında, ilk olarak dizinin ilk ve son elemanlarının konumları tespit edilir. Bu bilgilerden faydalanılarak orta elemanın konumu hesaplanır. Daha sonra, aranan eleman dizinin orta elemanıyla karşılaştırılır ve ikisinin eşit olup olmadığına bakılır. Aranan eleman orta elemana eşit ise arama başarılı bir şekilde sonlandırılır. Aksi takdirde, aranan elemanın dizinin orta elemanından küçük veya büyük olma durumu incelenir. Aranan eleman orta elemandan büyük ise, aramaya orta eleman ile son eleman arasındaki dizi elemanları ile devam edilir. Tam tersi durum söz konusu ise, aramaya ilk eleman ile dizinin orta elemanı arasındaki dizi elemanları ile devam edilir. Bu işlem her tekrar edildiğinde ilk, orta veya son elemanların konumlarının değişmesi söz konusu olabilir. Soruda 7 elemanlı bir dizi bulunmaktadır. Söz konusu dizi içerisinde 3 sayısının aranması söz konusudur. Algoritma çalışmaya başladığında ilk, orta ve son elemanların konumları belirlenecektir. Bu dizinin 4. konumundaki 12 sayısı orta elemandır. Daha sonra, aranan eleman olan 3 sayısının orta elemana eşit, küçük veya büyük olması durumuna bakılmaktadır. Bu sayı orta elemandan küçük olduğu için, aramaya dizinin ilk elemanı ile dizinin orta elemanı arasındaki dizi elemanları ile devam edilecektir. Bu sebeple, ilk elemanın konum bilgisi güncellenecektir ve bu güncelleme sonrasında orta elemanın konumu yeniden hesaplanacaktır. İkinci karşılaştırma adımında, ilk eleman olan 1’’in konum bilgisi 1, orta eleman olan 5’in konum bilgisi 2 ve son eleman olan 6’nın konum bilgisi ise 3’tür.

Yorumlar
  • 0 Yorum