“Ma’lumotlar tuzilmasi va algoritmlar” fanining maqsadi va vazifasi


Chiziqli qidiruvni amalga oshirish protsedurasi



Download 17,57 Mb.
bet16/129
Sana29.11.2022
Hajmi17,57 Mb.
#874460
1   ...   12   13   14   15   16   17   18   19   ...   129
Bog'liq
@TUIT quiz MTA

Chiziqli qidiruvni amalga oshirish protsedurasi
Chiziqli qidiruv
Indeksli ketma ket qidiruv
Bu ko’rinishdagi qidiruvda 2ta jadval tashkil qilinadi :
1. O’z kalitiga ega ma”lumotlar jadvali( osish tartibida);
2. Indekslar jadvali – bu jadval ham kalitlardan tashkil topgan, lekin bu kalitlar asosiy jadvaldan tanlab aniq interval (m<=n) bilan olinadi.
Dastlab qidiruv argumenti bo’yicha indekslar jadvalida ketma ket qidiruv o’tkaziladi. Tanlangan kalitdan katta kalit topilganda, biz asosiy jadvalda qidiruvning quyi – low-, va yuqori –hi- (kind > key) chegaralarini belgilab qo’yamiz.
Masalan, key=101
Qidiruv jarayoni butun jadval bo’yicha emas, balki low dan hi gacha o’tkaziladi.
Indeksli ketma-ket qidiruv
Eslatma
Indeksli ketma-ket algoritmdan, agar ma’lumotlar jadvali tartiblangan bo‘lsa, foydalanish mumkin bo‘ladi.

Indeksli ketma-ket qidiruv protsedurasi psevdokodi:

  • i=1
  • While (i<=m) and (kind(i)<=key) do
  • i=i+1
  • Endwhile
  • If i=1 tnen low =1
  • Else low=pind(i-1)
  • Endif
  • If i=m+1 then hi=n

Else hi= pind(i)-1

  • Else hi= pind(i)-1
  • Endif
  • For j=low to hi
  • If key=k(j) then
  • Search=j
  • Return
  • Endif
  • Next j
  • Search=0 return

Binar (oraliqni teng ikkiga bo‘lish orqali) qidiruv
Algoritm g’oyasi
Berilgan massiv o‘rtasidagi element olinadi, ya’ni am (m=(N+1)/2), va u X qidiruv argumenti bilan taqqoslanadi. Agar am=X bo‘lsa, u holda qidiruv yakunlanadi; agar am m dan kichik yoki teng bo‘lgan barcha elementlarni kelgusi qidiruvdan chiqarib yuboriladi. Xuddi shuningdek, agar am >X bo‘lsa.
Izoh
Mazkur ko‘rinishdagi algoritmdan faqatgina ma’lumotlar jadvali tartiblangan bo‘lsagina foydalanish mumkin.
Faraz qilaylik, o‘sish tartibida tartiblangan sonlar massivi berilgan bo‘lsin, ya’ni a1 ≤ a2 ≤ a3 ≤… aN .
X- qidiruv kaliti bo‘lsin.
Low=1
Hi=n
While (low<=hi) do
mid=(low+hi)div2
If key=k(mid) then
Search=mid
Return
Endif
If keyHi=mid-1
Else low=mid+1 endif
Endwhile
Search=0
Return

Download 17,57 Mb.

Do'stlaringiz bilan baham:
1   ...   12   13   14   15   16   17   18   19   ...   129




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