Mirsaid Aripov, Nurillo Otaxanov


Massivdan ma`lumotlarni ikkiga bo`lish usuli bilan qidirish



Download 9,81 Mb.
bet53/209
Sana16.01.2022
Hajmi9,81 Mb.
#371485
1   ...   49   50   51   52   53   54   55   56   ...   209
Bog'liq
DELPHI dasturlash titli 2018

7.5. Massivdan ma`lumotlarni ikkiga bo`lish usuli bilan qidirish


Ko`pincha elementlari tartiblangan massivdan biror ma`lumotni qidirish bilan bog’liq masalalarni yechishga to`g’ri keladi. Masalan, alfavit bo`yicha tartiblangan familiyalar massividan "Aliyev" familiyasi, kitoblar massividan "Shum bola" romanini qidirib topish va x.k. Tartiblangan massivdan ma`lumot qidirish masalasi uchun teng ikkiga bo`lish usuli samarali usullardan biri hisoblanadi.

Faraz qilaylik, o`sish tartibida tartiblangan massivda berilgan sonning (namuna) bor yoki yo`qligini aniqlash talab qilingan bo`lsin.

Teng ikkiga bo`lish usulning g’oyasi namuna izlanayotgan oraliqni teng ikkiga bo`lishga asoslanadi. Tekshirishni boshlashdan avval, massivda izlangan namuna element mavjud emas deb faraz qilinadi. Izlash oralig’i chap chegarasi kichik, o`ng chegarasi katta, ular o`rtasida joylashgan element indeksini urta bo`lsin degan belgilash kiritiladi. Dastlab o`rtadagi element indeksi urta topiladi. So`ng namuna urta indeksli element bilan taqqoslanadi. Agar ular teng bo`lsa, masala yechimi topildi deb jarayon to`xtatiladi. Aks holda, namuna urta indeksli elementga nisbatan qaysi oraliqda joylashganligi aniqlanadi. Unga ko`ra, namuna izlanayotgan oraliqning nokerak qismini tashlab, kerakli qismi olib qolinadi. Shu oraliqqa bog’liq ravishda yuqoridagi belgilashga binoan katta yoki kichik o`zgaruvchilardan biri urta qiymatini oladi. Shundan keyin, katta yoki kichik ning yangi qiymatlari uchun urta ning yangi qiymati hisoblanadi va yuqoridagi jarayon yana bir marta takrorlanadi. Bu ish toki namunaga teng bo`lgan element topilguncha yoki izlash oralig’i uchun kattakichik  1 bo`lib qolguncha davom ettiriladi. So`ngi holda katta yoki kichik indeksli elementlarning namunaga tengligi tekshiriladi. Urta qiymatini aniqlashda kattakichik miqdorning juft yoki toqligini tekshirib, agar u juft bo`lsa, urta(kattakichik)2, aks holda urta[kattakichik]21 soni olinadi. Bu yerda [x]-butun sonni anglatadi.

Faraz qilaylik, B massivida n ta element mavjud bo`lsin. Teng ikkiga bo`lish usuli quyidagi algoritm yordamida amalga oshiriladi.



  1. Boshlansin

  2. Kiritilsin Namuna

  3. y : 'yo`q'

  4. kichik : 1; katta : n

  5. agar katta-kichik  1 yoki y  'yo`q' bo`lsa 11 ga o`tilsin

  6. a : kichik  katta

  7. agar a juft bo`lsa, urta : (kichik  katta)  2, aks holda urta : [kichik  katta]  2  1

  8. agar NamunaB(urta) bo`lsa 12 ga o`tilsin

  9. agar namuna>B(urta) bo`lsa kichik : urta, aks holda katta : urta

  10. 5 ga o`tilsin

  11. Agar B(kichik)Namuna yoki B(katta) Namuna bo`lsa y:'Xa'

  12. Chiqarilsin u

  13. Tamom

Bu dasturining dialog oynasi 7.10-rasmda berilgan. Label3 maydoni qidirish natijasi hamda qidirish qaydnomasi uchun mo`ljallangan. Agar Qaydnomani chiqarilsin bayroqchasi o`rnatilgan bo`lsa, Qaydnoma kichik, urta va katta o`zgaruvchilarning dastur davomida qabul qilgan qiymatlarini formaga chiqaradi va ikkiga bo`lish usuli mohiyatini tahlil qilishga yordam beradi. Ilova formasida foydalanilgan CheckBox (bayroq-cha) komponentasining nishoni Standard qurollar panelida joylashgan. CheckBox komponentasining ayrim hususiyatlari 7.5-jadvalda berilgan.




Download 9,81 Mb.

Do'stlaringiz bilan baham:
1   ...   49   50   51   52   53   54   55   56   ...   209




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish