• include
  • rasm. Stekning vektorda amalga oshirilishi rasm




    Download 1,27 Mb.
    bet4/5
    Sana23.01.2024
    Hajmi1,27 Mb.
    #144058
    1   2   3   4   5
    Bog'liq
    Nishonov Ma\'lumotlar tuzilmasi va algoritmlar 1-chi Mus

    rasm. Stekning vektorda amalga oshirilishi




      1. rasm. Stekning bog’langan ro’yxatda amalga oshirilishi



      1. rasm. abstract stek (a), stekni vektorda amalga oshirilishi (b) va stekni bog’langan ro’yxatda amalga oshirilishi(c) uchun amallar ketma – ketligi.

    Navbatlar


    Navbat bu shunday tuzilmaki, u elementlar qo’shilishi bilan kengayib boradi va elementlarni faqatgina bir tomondan qabul qiladi. Stekdan farqli holda, navbat tuzilmasi har ikkala tomondan ham ochiq hisoblanadi, lekin element kiritish bir tomondan, chiqarish esa ikkinchi tomonidan amalga oshiriladi. Navbat FIFO(first in first out – birinchi kelgan birinchi ketadi) ko’rinishidagi tuzilmadir. Navbatda ham xuddi stekdagi kabi C++ da alohida kutubxona mavjud.

    #include


    Navbatni dasturda e’lon qilish quyidagicha:

    _nav1;"> Queue nav1;


    Navbat ustida quyidagi amallar bajariladi:

    • Clear() - navbatni tozalash.

    • isEmpty() – navbatni bo’shlikka tekshirish

    • enqueue(el)—el elementni navbatga joylashtirish

    • dequeue() —navbatdan birinchi elementni olish

    • firstEl() — navbatning birinchi elementini uni o’chirmasdan qaytaradi Navbatda bajariladigan enqueue va dequeue amallari 4.7 rasmda keltirilgan.

    Steklardan farqli ravishda navbatlarda o’zgarishlar uning oxirida va boshida bo’lishi nazorat qilinishi lozim. Elementlar navbatga oxiridan joylashtiriladi, olish esa boshidan amalga oshiriladi.


      1. rasm. Navbatda bajariluvchi amallar ketma – ketligi





      1. rasm. Navbatni massivda amalga oshirilish dasturi.





      1. rasm. Navbatni bog’langan ro’yxatda amalga oshirilish dasturi

      2. – rasmda navbatda element qo’shish va o’chirish amallari ketma –ketligi 4.7 – rasmdagiga o’xshash ravishda ko’rsatilgan bo’lib, 4.10b da navbatni o’zgarishi massiv ko’rinishida,4.10c da bog’langan ro’yxat ko’rinishida amalga oshirilgan.

    4.10 – rasm. Navbat ustida amallar bajarish.


    DEK (DEQ - Double Ended Queue)
    Dek so‘zi (DEQ - Double Ended Queue) ingliz tilidan olingan bo‘lib 2 ta chetga ega navbat degan ma’noni bildiradi. Dekning o’ziga xos xususiyati shundan iboratki, elementlarni yozish va o’qishni har ikkala chetidan ham amalga oshirish mumkin.

    Dekni quyi chegaralari birlashtirilgan ikkita stek ko’rinishda qarash mumkin. Deklar bilan ishlash uchun ham C++ da alohida kutubxona mavjud:





    Download 1,27 Mb.
    1   2   3   4   5




    Download 1,27 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    rasm. Stekning vektorda amalga oshirilishi rasm

    Download 1,27 Mb.