• 2. Bir bog‘lamli ro‘yhat boshidan elementni o‘chirish
  • Bir bog‘lamli ro‘yhat boshiga element qo‘yish




    Download 18,84 Mb.
    bet126/163
    Sana16.01.2024
    Hajmi18,84 Mb.
    #138868
    1   ...   122   123   124   125   126   127   128   129   ...   163
    Bog'liq
    O zbekiston respublikasi oliy va o rta maxsus ta lim vazirligi t

    Bir bog‘lamli ro‘yhat boshiga element qo‘yish



    3.3-rasm. Bir bog‘lamli chiziqli ro‘yhat tuzilishi


    3.3-rasmdagi ro‘yhat boshiga informatsion maydoni D o‘zgaruvchi bo‘lgan element qo‘yamiz. Ushbu ishni amalga oshirish uchun quyidagi amallarni bajarish lozim bo‘ladi:


    a) p ko‘rsatkich murojaat qiladigan, bo‘sh element yaratish (3.4-rasm).



    3.4-rasm. Yangi element hosil qilish


    b) Yaratilgan element informatsion maydoniga D o‘zgaruvchi qiymatini o‘zlashtirish (3.5-rasm).





    3.5-rasm. Yangi element info maydoniga qiymat kiritish


    c) Yangi elementni ro‘yhat bilan bog‘lash: p->ptr=lst; (shu holatda yangi element va lst – ro‘yhat boshini ko‘rsatyapti)
    d) lst ko‘rsatkichni ro‘yhat boshiga ko‘chirish (3.6-rasm). lst=p;
    Va nihoyat:



    3.6-rasm. Ro‘yhat boshiga element qo‘shish


    Endi shu algoritmni C++ tilidagi realizatsiyasini ko‘rib chiqamiz.


    Node * p = new Node;
    int numb = -1;
    cout<<"son kiriting: ";
    cin>>numb;
    p->info = numb;
    if (lst ==NULL){
    p->next = NULL;
    lst = p; }
    else { p->next = lst;
    lst = p;}

    2. Bir bog‘lamli ro‘yhat boshidan elementni o‘chirish


    Ro‘yhatda birinchi element info informatsion maydonidagi ma’lumotni esda saqlab qolib uni ro‘yhatdan o‘chiramiz (3.7-rasm).



    3.7-rasm. Ro‘yhat boshidagi elementni o‘chirish


    Yuqorida aytilganlarni amalga oshirish uchun quyidagi ishlarni bajarish lozim:


    a) o‘chirilayotgan elementni ko‘rsatuvchi p ko‘rsatkich kiritish: p=lst;
    b) p ko‘rsatkich ko‘rsatayotgan element info maydonini qandaydir x o‘zgaruvchida saqlash: x=p->info;
    c) lst ko‘rsatkichni yangi ro‘yhat boshiga ko‘chirish: lst=p->ptr;
    d) p ko‘rsatkich ko‘rsatayotgan elementni o‘chirish: delete(p);
    Natijada 3.8-rasmdagi ko‘rinishga ega bo‘lamiz.


    3.8-rasm. Ro‘yhatning natijaviy ko‘rinishi


    Endi shu algoritmni C++ tilidagi realizatsiyasini ko‘rib chiqsak.
    Node* p = new Node;
    if (lst == NULL){
    cout<<"ro'yhat bo'sh";
    system("pause");
    system("CLS");
    }
    else { p = lst;
    lst = p->next ;
    delete(p);
    }

    Download 18,84 Mb.
    1   ...   122   123   124   125   126   127   128   129   ...   163




    Download 18,84 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Bir bog‘lamli ro‘yhat boshiga element qo‘yish

    Download 18,84 Mb.