O`zbekiston Respublikasi Oliy va O`rta maxsus ta`lim vazirligigi Islom Karimov nomidagi Toshkent Davlat Texnika Universiteti


Teng bo’lish orqali qidiruv (ikkilik qidiruv) algoritmi



Download 334,55 Kb.
bet3/3
Sana03.01.2022
Hajmi334,55 Kb.
#315277
1   2   3
Bog'liq
Web Dasturlash Mustaqil ish

3.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’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<

topilmadi\n";

system("pause");

}

Dastur natijasi



n=6

1 2 3 4 5 6

qidirilayotgan elementni kiriting=6

qidirilayotgan element 6 o'rinda turibdi va u 3 ta solishtirishda toplidi.

FOYDALANILGAN ADABIYOTLAR

1. Акбаралиев Б.Б. Конспект лекций по курсу “Маълумотлар тузилмаси

ва алгоритмлар” для студентов по специальности 5521900 “Информатика

и информационные технологии”, Ташкент, 2008 г.

2. Акбаралиев Б.Б. Методические указания к лабораторным работам по

курсу “Маълумотлар тузилмаси ва алгоритмлар” для студентов по

специальности 5521900 “Информатика и информационные технологии”,

Ташкент, 2008 г.

3. Xudoyberdiyev M.X., Akbaraliyev B.B. “Ma’lumotlat tuzilmasi va

algoritmlar” fanidan amaliy mashg’ulotlar uchun topshiriqlar (uslubiy



ko’rsatmalari bilan). Toshklent, 2013 y.
Download 334,55 Kb.

Do'stlaringiz bilan baham:
1   2   3




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