Ma’lumotlar tuzilmasi va algoritmlar fanining maqsad va vazifasini izohlab bering


//ro’yxat struct TNode { int value



Yüklə 1,56 Mb.
səhifə6/32
tarix05.10.2023
ölçüsü1,56 Mb.
#152400
1   2   3   4   5   6   7   8   9   ...   32
MTA oraliq javoblai

//ro’yxat

  • struct TNode { int value;

  • TNode* pnext;

  • TNode(int val): pnext(0), value(val) {} };

  • //qidirish funksiyasi

  • TNode* Find(TNode *phead, int x)

  • {

  • TNode *p=phead;

  • while(p)

  • if (p->value==x) return p;

  • else p = p->pnext;

  • return 0;

  • }



    16.Indeksli ketma-ket qidiruv usuli, uning ishlash printsiplari, algoritmni misollar yordamida tushuntirib bering.
    Bu qidiruv amalga oshirilayotganda ikkita jadval tashkil qilinadi: o’z kalitiga ega ma’lumotlar jadvali (o’sish tartibida tartiblangan) va indekslar jadvali.
    Bu yerda birinchi berilgan argument bo’yicha indekslar jadvalidan ketma-ketlikda qidirish amalga oshiriladi. Kalitlarni ko’rib chiqishda berilgan kalitdan kichigi topilsa, u holda ushbu kichik kalitni asosiy jadvaldagi qidirishning eng quyi chegarasi – low ga joylashtiramiz, xuddi shunday berilgan kalitdan katta deb topilgan kalitni (kind > key) yuqori hi ga joylashtiramiz.

    • Misol uchun, key = 101 bo’lsin. U holda qidiruv butun jadval bo’yicha emas, balki low dan hi gacha amalga oshiriladi.

    • int InSeqsearch(int realArray[], int N, int kind[2][1000],int m,int key, int *t) {

    • int i=0, low = 0, hi = 0;

    • while ((i

    • if (i==0) low=0; else low=kind[1][i-1];

    • if (i==m) hi=N; else hi=kind[1][i]-1;

    • for (int j=low; j<=hi; j++) {

    • (*t)++; if( key==realArray[j] )

    • { return j; }

    • }

    • return -1;

    • }



    Yüklə 1,56 Mb.

    Dostları ilə paylaş:
  • 1   2   3   4   5   6   7   8   9   ...   32




    Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
    rəhbərliyinə müraciət

    gir | qeydiyyatdan keç
        Ana səhifə


    yükləyin