• LUGAT HAQIDA TUSHINCHA VA U BILAN ISHLASH
  • Ma‘lumotlar tuzilmasi va algoritmlar




    Download 3,27 Mb.
    Sana15.12.2023
    Hajmi3,27 Mb.
    #119505
    Bog'liq
    Malumotlarmaruza


    Muhammad Al-Xorazmiy nomidagi Toshkent Axborot texnologiyalari universiteti



    Ma‘lumotlar tuzilmasi va algoritmlar fanidan mustaqil ish
    O’qituvchi: Akbarova Marg’uba
    Talaba: Sulaymonov Diyorbek
    11.12.2023
    Mavzu : Lug‘atlar va ularni amalga oshirish.

    C++ tilida lug'atlar, ma'lumotlar strukturasini ifodalovchi bir turi bo'lib, "assotsiativ massiv" (associative array) yoki "assotsiativ ro'yxat" (associative list) deb ham ataladi. Bu ma'lumotlar strukturasida har bir element bir kalit (key) va unga mos keluvchi qiymat (value) mavjud bo'lishi kerak.


    Lug’atlar “std::map” yoki “std::unordered_map” kabi standart C++ bibliotekasidagi obyektlardan foydalanilgan.





    1. “std::map”

      • Elementlar tartiblangan (kalitlar orasidan)

      • Elementlar qo’shilganda tartib o’zgarmaydi

      • Yodda saqlash (memory overhead) yuqori

      • Xotira oqimining bajarilishi tartibi (‘0 ( log n ) ’).


    Result :




    1. std::unordered_map:

    • Elementlar tartiblanmagan

    • Elementlar qo’shilganda tartib o’zgarmaydi

    • Yodda saqlash (memory overhead) pastroq

    • Xotira oqimining bajarilish tartibi (“ 0 ( 1 ) ”)


    Result:




    Endi lug’atlar bilan Python tilida tanishamiz.


    LUG'AT HAQIDA TUSHINCHA VA U BILAN ISHLASH


    Lug’at Pathon dasturlash tilining turi hisoblanadi va u ikki qismdan tashkil topgan: kalit so'z va izoh (yoki tarjima). Lug’atlar {} qavsda keltiriladi. Sodda lug’atga misol keltiramiz:
    talaba={’familiya’:’Aliyev’,’ismi’:’Salim’}
    Bu yerda sodda talaba lug’atini yaratdik. Lug’atimiz ikki qismdan tashkil topgan. ‘familiya’ va ‘ismi’ lug’atning kalit so’zi hamda mos ravishda ‘Aliyev’ va ‘Salim’ kalit so’zlarning qiymati hisoblanadi. Kalit so'z va qiymat orasi ikki nuqta (:) bilan, lug'atdagi har bir juftlik esa vergul (,) bilan ajratiladi.
    Pytonda lug'at kalit so'z-qiymat juftliklarining yi'ginidisi ekan. Lug'atdagi biror qiymatni ko'rish uchun unga kalit so'z orqali murojat qilamiz:

    Lug’atlarga murojaat qilish:








    Lug'atga yangi kalit so'z va qiymatlar qo'shishimiz ham mumkin. Keling yuqoridagi eng_uz lug’atiga 2 3 ta yangi element qo’shamiz va ekranga chiqaramiz.



    Yuqorida lug’atga element qo’shishni o’rgandik.


    Endi ekranga lug’atning faqat key larine va faqat value larini chiqarishni ko’rib chiqaylik.


    Faqat lug’at key larini ekranga chiqarish uchun biz .keys() metodidan foydalanamiz.


    Faqat lug’at qiymatlarini ekranga chiqarish uchun biz .values() metodidan foydalanamiz.








    Biz lug’atdagi barcha elementlarini chiqarish uchun .items() metodidan foydalanamiz.





    Keling endi sorted() funksiyasi bilan tanishamiz. Bu funksiya lug’at ichidagi elementlarni alifbo bo’yicha tartiblab beradi.





     pop() metodi belgilangan kalit yordamida element o'chiriladi.





    clear() metodi lug'atdan barcha elementlarni olib tashlaydi





     copy() metodi lug'at nusxasini qaytaradi



    Download 3,27 Mb.




    Download 3,27 Mb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Ma‘lumotlar tuzilmasi va algoritmlar

    Download 3,27 Mb.