Ma`lumotlar tuzilmasi va algoritmlash fanidan Mavzu: Eng oddiy qatorlarni qayta ishlash algoritmlari


Teng bo`lish orqali qidiruv (ikkilik qidiruv) algoritmi


Download 0.73 Mb.
Pdf ko'rish
bet8/8
Sana05.01.2022
Hajmi0.73 Mb.
#219738
1   2   3   4   5   6   7   8
Bog'liq
mta mustaqil ish Ro'ziboyev I

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 



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=5; 







Qidirilayotgan son: 2; 


 

 

Xulosa. 

Ma`lumotlarni  kompyuterda  qayta  ishlashda  elementning  informatsion maydoni  va  

uning    mashina    xotirasida    joylashishini    bilish    zarur  hisoblanadi.  Shu    maqsadda 

ma`lumotlarni  saralash  amalga  oshiriladi. Hamda ma`lumotlarni qayta ishlashda qidiruv 

asosiy amallardan biri hisoblanadi.  Uning  vazifasi  berilgan  argument  bo`yicha  massiv  

ma`lumotlari  ichidan    mazkur    argumentga    mos    ma`lumotlarni    topish    yoki    bunday  

ma`lumot yo‟qligini aniqlashdan iborat. Budan tashqari ma`lmotlarni o`zgartirish, ularni 

o`cherish kabi amallarning barchasi   ma`lumotlar ustidan qayta ishlash amallari hisoblanar 

ekan. 


Foydalanilgan adabiyotlar ro`yxati: 

1. 

“MA`LUMOTLAR TUZILMASI VA ALGORITMLAR” fanidan laboratoriya ishlarini 

bajarish  bo`yicha USLUBIY KO`RSATMA 

 

Akbaraliyev  B.B. va Yusupova Z.Dj.   

2. Darslar davomida foydalanilgan adabiyotlar. 

3. 


www.ziyonet.uz

 

4. 



www.cplusplus.com

 

 



 

 

Download 0.73 Mb.

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




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