6-Amaliy mashg‘ulot: Ma’lumotlarni saralash algoritmlari va dasturlarini ishlab chiqish


-Amaliy mashg‘ulot: Chiziqli bog‘langan ro‘yxatlar bilan ishlash algoritmlari va dasturlarini tuzish



Yüklə 35,65 Kb.
səhifə2/3
tarix30.12.2023
ölçüsü35,65 Kb.
#164929
1   2   3
2-deadline shablon

Amaliy qism:

8-Amaliy mashg‘ulot: Chiziqli bog‘langan ro‘yxatlar bilan ishlash algoritmlari va dasturlarini tuzish.


Ishdan maqsad: Ushbu amaliyot ishining maqsadi talabalar ro‘yxatlar mavjudligini va ularning samaradorliklarini baholashni o‘rganishlari kerak. Shu asosda sinflar usullarini qiyosiy tahlil qilishlari, C++ dasturlash tilida ro‘yxatlar bilan ishlashni va ularga oid dasturlar tuzishni o‘zlashtirishlari kerak.
Qo‘yilgan masala: Talabalar topshiriq variantiga mos ro‘yxatlar yordamida masalani yechish dasturini yaratish ko‘nikmasiga ega bo‘lishlari kerak.
Ish tartibi:

  1. Tajriba ishi nazariy ma’lumotlarini o‘rganish;

  2. Berilgan topshiriqning algoritmini ishlab chiqish;

  3. C++ dasturlash muhitida dasturni yaratish;

  4. Natijalarni tekshirish;

  5. Hisobotni tayyorlash va topshirish.

Array va Vector bir-biriga yaqin konteynerlardir, ya’ni ular o‘zlarining ma’lumotlarini doimiy xotirada saqlaydilar, shuning uchun vektor / massivning o‘rtasiga qo‘shib qo‘yish juda qimmatga tushadi (operaton soni va ishlov berish vaqti bo‘yicha), chunki biz barcha elementlarni almashtirishimiz kerak, bog‘langan ro‘yxat ushbu muammoni engib chiqadi. Bog‘langan ro‘yxat ro‘yxat konteyneridan foydalanish orqali amalga oshirilishi mumkin.
Amaliy qism:


9-Amaliy mashg‘ulot: Stek, navbat va dek bilan ishlash algoritmlari va dasturlarini tuzish.




Ishdan maqsad. Ushbu amaliyot ishida talabalar STL komponentalaridan biri bo‘lgan stek bilan tanishib chiqishi hamda stekda mavjud bo‘lgan funksiyalar bilan ishlashni o‘rganishlari kerak.
Qo‘yilgan masala. Talabalar topshiriq variantiga mos ravishda steklar ustida berilgan funksiyalar bilan ishlash ko‘nikmasiga ega bo‘lishlari kerak.
Ish tartibi:

  • Tajriba ishi nazariy ma’lumotlarini o‘rganish;

  • Berilgan topshiriqning algoritmini ishlab chiqish;

  • C++ dasturlash muhitida dasturni yaratish;

  • Natijalarni tekshirish;

  • Hisobotni tayyorlash va topshirish.

Stakning barcha elementlari bir xil bo‘lganligi sababli, C yoki C ++ dagi Arrays yordamida stekni amalga oshirish juda oson. Stakning birinchi elementini birinchi qator uyasiga, stackning ikkinchi elementini ikkinchi qator uyasiga va hokazolarni qo‘yish mumkin. Stekning yuqori qismi bu stekka qo‘shilgan so‘nggi elementning indeksidir. Stekni amalga oshirishda stack elementlari massivda saqlanadi.
STACK bu ma’lumotlar strukturasi bo‘lib, unda elementlarga faqat bitta uchida, ya’ni Last In First Out ma’lumotlar tuzilmasida kirish mumkin (ochilgan yoki itarilgan). Shunday qilib, stack elementiga faqat tepadan kirish mumkin, pastki yoki o‘rtadan emas.Stekning bu xususiyati juda muhimdir va uni yaxshi tushunish kerak.
Massivning yuqori holatini kuzatib borish uchun biz shunchaki Top of Stack deb nomlangan boshqa o‘zgaruvchini e’lon qilishimiz mumkin.
Stack LIFO algoritmini, ya’ni Last In First Out (LIFO) tuzilmasidan foydalanadi. Yangi boshlanuvchilar uchun bu biroz chalkash, ammo bu juda oson tushuncha(5-rasm)
Amaliy qism:



Yüklə 35,65 Kb.

Dostları ilə paylaş:
1   2   3




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə