O’zbekiston Respublikasi Axborot Texnologiyalari va Kommunikatsiyalarini Rivojlantirish Vazirligi


Chiziqli bir bog‘lamli ro‘yhatdan key kalitga mos elementni ketma-ket qidiruv usuli yordamida izlab topish dasturi



Download 360,46 Kb.
bet4/10
Sana01.07.2021
Hajmi360,46 Kb.
#106402
1   2   3   4   5   6   7   8   9   10
Bog'liq
mta labaratoriya 2

Chiziqli bir bog‘lamli ro‘yhatdan key kalitga mos elementni ketma-ket qidiruv usuli yordamida izlab topish dasturi.


Node *q=NULL;

Node *p=lst;

while (p !=NULL){

if (p->k == key){

search = p;

return search;

}

q = p;

p = p->nxt;

}

Node *s=new Node;;

s->k=key;

s->r=rec;

s->nxt= NULL;

if (q == NULL){ s->nxt=lst; lst = s; }

else q->nxt = s;

search= s;

return search;

Ro‘yhatli tuzilmaning afzalligi shundan iboratki, ro‘yhatga elementni qo‘shish yoki o‘chirish tez amalga oshadi, bunda qo‘shish yoki o‘chirish element soniga bog‘liq bo‘lmaydi, massivda esa elementni qo‘shish yoki o‘chirish o‘rta hisobda barcha elementlarning yarmini siljitishni talab qiladi. Ro‘yhatda qidiruvning samaradorligi taxminan massivniki bilan bir xil bo‘ladi.


    1. Teng bo‘lish orqali qidiruv (ikkilik qidiruv) algoritmi


Faraz qilaylik, o‘sish tartibida tartiblangan sonlar massivi berilgan bo‘lsin. Ushbu usulning asosiy g‘oyasi shundan iboratki, tasodifiy qandaydir AM element olinadi va u X qidiruv argumenti bilan taqqoslanadi. Agar AM=X bo‘lsa, u holda qidiruv yakunlanadi; agar AM bo‘lsa, u holda indekslari M dan kichik yoki teng bo‘lgan barcha elementlar kelgusi qidiruvdan chiqarib yuboriladi. Xuddi shuningdek, agar AM >X bo‘lsa, u holda indekslari M dan katta bo‘lgan barcha elementlar kelgusi qidiruvdan chiqarib yuboriladi.

M ixtiyoriy tanlanganda ham taklif qilinayotgan algoritm korrekt ishlaydi. Shu sababali M ni shunday tanlash lozimki, tadqiq qilinayotgan algoritm samaraliroq natija bersin, ya’ni uni shunday tanlaylikki, iloji boricha kelgusi jarayonlarda ishtirok etuvchi elementlar soni kam bo‘lsin. Agar biz o‘rtacha elementni, ya’ni massiv o‘rtasini tanlasak yechim mukammal bo‘ladi. Misol uchun butun sonlardan iborat, o‘sish bo‘yicha tartiblangan massivdan ikkilik qidiruv usuli yordamida key kalitga mos elementni izlash dasturini ko‘rib chiqamiz.

Dastur kodi

#include

using namespace std;

int main(){

int n;cout<<"n=";cin>>n;

int k[n];

for(int i=0;i>k[i];

int key, search;

cout<<"qidirilayotgan elementni kiriting=";cin>>key;

int low = 0;

int hi = n-1; int j=0;

while (low <= hi){

int mid = (low + hi) / 2;j++;

if (key == k[mid]){

search = mid;

cout<<"qidirilayotgan element "<

system("pause");

exit(0);

}

if (key < k[mid])

hi = mid - 1;

else low = mid + 1;

}

search=-1;

cout<

system("pause");

}


    1. Download 360,46 Kb.

      Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




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