• Ma’lumotlar tuzilmasi va algoritmlar” fanidan
  • Asosiy vazifa: Sizdan talab qilinadi namunada berilgan klassning ikkita push() va pop()
  • Ma’lumotlar tuzilmasi va algoritmlar” fanidan 2-mustaqil ishi tuzuvchi: Qo’ziboyev Xasanboy




    Download 356.54 Kb.
    bet1/4
    Sana16.12.2023
    Hajmi356.54 Kb.
    #120363
      1   2   3   4
    Bog'liq
    Xasanboy MT Maruza
    Mavzu, 4-Laboratoriya, Mavzu Tarmoqlararo ekran texnologiyalari Reja, MTA 1-amaliy ish topshiriqlari, netniki, parviz 1-mustaqil ish, Ismoilov 2, j.abdulaziz.dock, 3mbum, 2-, Kimlar pedagogik faoliyat bilan shug, lab1-4.t.x, 1-Mustaqil ta'lim, 7-mavzu, openstack

    O‘ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
    MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI SAMARQAND FILIALI

    KOMPYUTER INJINIRINGI” FAKULTETI
    DASTURIY INJNIRINGI” KAFEDRASI

    Ma’lumotlar tuzilmasi va algoritmlar” fanidan


    2-MUSTAQIL ISHI


    Tuzuvchi:Qo’ziboyev Xasanboy


    Fan o‘qituvchisi: Kudratov R.


    S a m a r q a n d _ 2023
    1-MASALA


    1-masala. Stek tuzilmasini massiv yordamida tadbiq qilish dasturini yozing. Ma’ruza mashg’ulotlarida taqdim etilgan stekni tashkil etish va stek ustida bajariladigan amallar uchun metodlarni o’z tarkibida saqlovchi klassdan foydalaning. Shu bilan birgalikda push() va pop() funktsiyalarini yarating va ularni umumiy dasturda stek uchun qo’llang.
    Masalan:



    Asosiy vazifa:
    Sizdan talab qilinadi namunada berilgan klassning ikkita push() va pop() funksiya (metod) larini ishlab chiqish. push() metodi bitta butun sonli argumentga ega, 'x' – stekka yangi element qo’shish uchun, pop() metodi argumentsiz, butun top elementini o’chirish, agar stek bo’sh bo’lsa -1 qiymatini qaytarsin.
    Vaqt bo’yicha murakkablik: O (1) - push() va pop().
    Qo’shimcha xotira: O (1) - push() va pop().
    Cheklovlar:
    1 <= Q <= 100
    1 <= x <= 100
    Masalaning javobi:
    class Stack:
    def __init__(self):
    self.array = []
    self.top = -1
    self.max = 100
    #mening kodim
    def isEmpty(self):
    return self.top == -1
    #mening kodim
    def push(self, x):
    if self.top < self.max - 1:
    self.top += 1
    self.array.append(x)
    else:
    print("Stek to'la. Yangi element qo'shilmadi.")
    #mening kodim
    def pop(self):
    if self.isEmpty():
    print(-1)
    return -1
    else:
    qoshilgan_elem = self.array.pop()
    self.top -= 1
    print(f"{qoshilgan_elem} stekdan o'chirildi.")
    return qoshilgan_elem


    Download 356.54 Kb.
      1   2   3   4




    Download 356.54 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Ma’lumotlar tuzilmasi va algoritmlar” fanidan 2-mustaqil ishi tuzuvchi: Qo’ziboyev Xasanboy

    Download 356.54 Kb.