Mundarija:

Ikkilik qidiruvning o'rtasini qanday topasiz?
Ikkilik qidiruvning o'rtasini qanday topasiz?

Video: Ikkilik qidiruvning o'rtasini qanday topasiz?

Video: Ikkilik qidiruvning o'rtasini qanday topasiz?
Video: Yoshlar ittifoqi - O'zbekiston yoshlari | Ёшлар иттифоки - Узбекистон ёшлари 2024, Dekabr
Anonim

Tartiblangan massiv berilgan, biz topamiz o'rtada -elementning ko'p qismi va elementni kalit bilan tekshiring. Agar o'rtada -ko'pchilik element kalitga teng, biz kalitni topdik. Agar o'rtada -ko'pchilik element kalitdan kattaroqdir, biz qidirmoq chap yarmida o'rtada -ko'p element, boshqa biz qidirmoq o'ng yarmida.

Xuddi shunday, odamlar ikkilik qidiruvni qanday topish mumkin?

Ikkilik qidiruv : Qidirmoq ni qayta-qayta bo'lish orqali tartiblangan massiv qidirmoq yarmida interval. Butun massivni qamrab oladigan interval bilan boshlang. Agar ning qiymati qidirmoq kalit intervalning o'rtasida joylashgan elementdan kichikroq, intervalni pastki yarmiga toraytiring. Aks holda, uni yuqori yarmiga toraytiring.

Xuddi shunday, ikkilik qidiruvning katta O nima? Ikkilik qidiruv aslida a qidirmoq muvozanatli BSTda ishlash ( ikkilik qidiruv daraxt). Shunaqangi qidirmoq vaqt murakkabligiga ega O (log n). Qarang, saralangan massiv birinchi navbatda chuqurlik sifatida ko'rib chiqilishi mumkin qidirmoq muvozanatli BSTni ketma-ket seriyalash. Ya'ni, rekursiv ravishda quyidagilarni bajaring (ildizdan boshlab):

Shuningdek, bilingki, ikkilik qidiruvning 7 bosqichi nima?

Ikkilik qidiruv algoritmi

  • 1-qadam - foydalanuvchidan qidiruv elementini o'qing.
  • 2-qadam - tartiblangan ro'yxatdagi o'rta elementni toping.
  • 3-qadam - qidiruv elementini tartiblangan ro'yxatdagi o'rta element bilan solishtiring.
  • 4-qadam - Agar ikkalasi ham mos keladigan bo'lsa, u holda ekranda "Bergan element topildi!!!" va funksiyani tugating.

Ikkilik qidiruv qanday ishlaydi?

Ikkilik qidiruv saralangan elementlar ro'yxatidan elementni topishning samarali algoritmidir. Bu ishlaydi ro'yxatning yarmiga qayta-qayta bo'lish orqali mumkin Mumkin bo'lgan joylarni faqat bittasiga toraytirmaguningizcha, elementni o'z ichiga oladi.

Tavsiya: