Taqsimlangan tizimlarda qidiruv algoritmlar
Ikkilik qidiruv algoritmi
Download 251.37 Kb.
|
Amaliy mashg’ulot 1
- Bu sahifa navigatsiya:
- Algoritm
Ikkilik qidiruv algoritmiUshbu maqolada biz ikkilik qidiruv algoritmini muhokama qilamiz. Qidiruv - bu ro'yxatdagi ma'lum bir elementni topish jarayoni. Agar element ro'yxatda mavjud bo'lsa, u holda jarayon muvaffaqiyatli deb ataladi va jarayon ushbu elementning joylashuvini qaytaradi. Aks holda, qidiruv muvaffaqiyatsiz deb ataladi. Chiziqli qidiruv va Ikkilik qidiruv ikkita mashhur qidiruv usullaridir. Bu erda biz Binar qidiruv algoritmini muhokama qilamiz. Ikkilik qidiruv - saralangan ro'yxatlarda samarali ishlaydigan qidiruv usuli. Shunday qilib, ikkilik qidiruv texnikasidan foydalangan holda biron bir ro'yxatdagi elementni qidirish uchun biz ro'yxatning tartiblanganligiga ishonch hosil qilishimiz kerak. Ikkilik qidiruv "bo'l va zabt et" yondashuviga amal qiladi, bunda ro'yxat ikkiga bo'linadi va element ro'yxatning o'rta elementi bilan taqqoslanadi. Agar moslik topilsa, o'rta elementning joylashuvi qaytariladi. Aks holda, o'yin davomida olingan natijaga qarab, ikkala bo'limni qidiramiz. Izoh: Ikkilik qidiruv tartiblangan massiv elementlarida amalga oshirilishi mumkin. Agar ro'yxat elementlari tartiblangan bo'lmasa, avval ularni saralashimiz kerak.Keling, Binary Search algoritmini ko'rib chiqaylik. AlgoritmBinary_Search(a, pastki_chegara, yuqori_chegara, val) // 'a' - berilgan massiv, 'pastki_chegara' - birinchi massiv elementi indeksi, 'yuqori_chegara' - oxirgi massiv elementi indeksi, 'val' - qiymat qidirish uchun 1-qadam: beg = pastki_chegara , end = yuqori_chegara , pozitsiya = - 1 ni o'rnating 2-qadam: beg < =end paytida 3 va 4-bosqichlarni takrorlang 3-qadam: o'rta = (beg + end)/2 ni o'rnating 4-qadam: agar a[mid] = val pos = o'rtaga qo'ying chop etish pos 6-bosqichga o'ting else if a[mid] > val o'rnatish end = mid - 1 boshqa beg = o'rta + 1 ni o'rnating [end] [sikl oxiri] 5-qadam: agar pos = -1 bo'lsa "qiymat massivda mavjud emas" deb chop eting [end] 6-qadam: chiqish Download 251.37 Kb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling