• 17.Qidiruv usullarining samaradorligi: ketma-ket va indeksli ketma-ket qidiruv usullari samaradorligini tahlil qiling.
  • int InSeqsearch(int realArray[], int N, int kind[2][1000],int m,int key, int *t) {




    Download 5,63 Mb.
    bet8/71
    Sana18.12.2023
    Hajmi5,63 Mb.
    #122750
    1   ...   4   5   6   7   8   9   10   11   ...   71
    Bog'liq
    Test gift and xml-fayllar.org

    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<=key)) { i++; (*t)++; } (*t)++;


  • 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;


  • }



    17.Qidiruv usullarining samaradorligi: ketma-ket va indeksli ketma-ket qidiruv usullari samaradorligini tahlil qiling.
    Taqqoslashlar soni qanchalik kam bo’lsa, qidirish algoritmining samaradorligi shuncha yuqori bo’ladi.
    Massivda ketma-ket qidirish samaradorligi quyidagicha:
    C = 1 ÷ n, C = (n + 1)/2.
    Ro’yxatda ketma-ket qidirish samaradorligi ham xuddi shunday. Ma’lumotlarni massiv va ro’yxat ko’rinishlarda tashkil etishning o’z afzalligi va kamchiliklari mavjud, bog’langan ro’yxatlarda qidirishdagi taqqoslashlar soni ham massivdagi qidirish bilan bir xil bo’ladi.
    Qidirish maqsadi quyidagi protseduralarning bajarilishini ta’minlaydi:
    1) Topilgan yozuvni o’qish.
    2) Yozuvni chiqarish jarayonida uni jadvalga qo’yish.
    3) Topilgan yozuvni o’chirish.
          • Birinchi protsedura qolganlari bilan bir vaqtda bajariladi. Ikkinchi va uchinchi protseduralar ro’yxatli tuzilmalar uchun ancha samaraliroq (massivda elementlarni siljitish kerak).


          • Agar massivda elementlarni siljitishlar soni k ga teng deb olsak, u holda k=(n + 1)/2.






    Download 5,63 Mb.
  • 1   ...   4   5   6   7   8   9   10   11   ...   71




    Download 5,63 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



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

    Download 5,63 Mb.