|
Raqamli texnologiyalar vazirligi muhammad al xorazmiy nomidagi toshkent axborot texnologiyalari universiteti
|
bet | 1/6 | Sana | 17.11.2023 | Hajmi | 1,86 Mb. | | #100479 |
Bog'liq Маълумотлар тузилмаси ва алгоритми 1 deadline 1, 2, 3 erkinova2
O‘ZBEKISTON RESPUBLIKASI
RAQAMLI TEXNOLOGIYALAR VAZIRLIGI
MUHAMMAD AL – XORAZMIY NOMIDAGI
TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
FARG‘ONA FILIALI
“Komputer injiniringi ” fakulteti
Komputer injiniringi yo‘nalishi
715 21– guruhtalabasi
Erkinova Xalimaxonning
“MA’LUMOTLAR TUZILMASI VA ALGORITMLAR”
fanidantayyorlagan
AMALIY ISH TOPSHIRIQLARI
Topshirdi: ERKINOVA X
Qabul qildi: O.I.Ergashev
Farg‘ona 2022
1 – Amaliy mashg‘ulot
Ma’lumotlarningharxilturlariniqaytaishlashdasturlarinituzish. Algoritmlamingturlari, Umumiyko‘rinishdagima’lumotlartuzilmalarinihosilqilish, Rekursivmisollarnitahlilqilish, Rekursivalgoritmlarningdasturlariniishlabchiqish.
Ishdan maqsad: Umumiy ko‘rinishdagi ma’lumotlar tuzilmasini hosil qilishni o‘rganish.
Qo‘yilgan masala: Umumiy ko‘rinishdagi ma’lumotlar tuzilmasini hosil qilish algoritmlarini ishlab chiqish.
Ish tartibi:
1.Tajribaishinazariyma’lumotlarinio‘rganish;
2.Berilgantopshiriqningalgoritminiishlabchiqish;
3. C++ dasturlashmuhitidadasturniyaratish;
4. Natijalarnitekshirish;
5.Hisobotnitayyorlashvatopshirish.
Ma’lumotlarturliturdagiob’ektlardaniboratbo‘lishimumkin. Ma’lumotlarniquyidagiturkumlardaklassifikatsiyalashmumkin:
1. Massivlar:Massiv, birnechtaelementlarnibirortartibdasaqlaydiganturdagima’lumotlardir. Massivlartezkorqidirishvaelementlarnitartiblabyuklashuchunfoydalaniladi.
2. Vektorlar:Vektorlar, birorfizikavio‘zgaruvchiniyokiko‘rsatkichniifodalovchima’lumotlardir. Vektorlar, o‘z x, y, va z koordinatalaribo‘yichama’lumotlarnisaqlaydiganturdagiob’ektlardir.
3. Yozuvlar:Yozuvlarmatnma’lumotlariniifodalovchiturdagiob’ektlardir. Bu turdagima’lumotlarmatnlar, matnqatorlari, fayllaryokiboshqayozuvlardaniboratbo‘lishimumkin.
4. To‘plamlar:To‘plamlar, birqatorma’lumotlarnibirormaqsaduchunbirlashtiruvchiturdagima’lumotlardir. Ko‘pxilturdagito‘plamlarmavjudbo‘lishimumkin, masalan, listlar, ro‘yxatlar, ko‘pto‘plamlar, vaboshqalar.
5. Ko‘rsatkichliturlar:Ko‘rsatkichliturlarma’lumotlarniqaydetish, ifodalashyokiboshqako‘rsatkichliklaruchunfoydalaniladiganturdagiob’ektlardir. Bu, ma’lumotlarnibirorbirturiyokiklassibilanbog‘liqlashuchunfoydalaniladi.
C++ dasturlashtilidamassivlarvavektorlar (vectorlar) yaratish, ulargama’lumotqo‘shish, ma’lumotniolishvama’lumotlarbilanishlashuchunko‘pqo‘llaniladigankonseptlardir. Bu konseptlarniquyidagimisollardao‘rganishingizmumkin:
Massivlar (Arrays):
1. Massivyaratishvao‘zgaruvchilarniundasaqlash:
Massivyaratishuchuno‘lchami belli bo‘lgano‘zgaruvchilartuzishkerak. Massivningo‘lchami, o‘lchamlarsonivaturibo‘lishimumkin.
int myArray[5]; // 5 ta butunsonlarnio‘zichigaolganmassiv
double doubleArray[10]; // 10 ta haqiqiysonlarnio‘zichigaolganmassiv
2. Massivgama’lumotlarniqo‘shishvaolish:
Massivgama’lumotqo‘shishvaolishuchunindekslaryordamidafoydalaniladi. Massivningindeksi 0 dan boshlanadi.
myArray[0] = 42; // Massivningbirinchielementigaqiymatnio‘rnating
int value = myArray[2]; // Massivningikkinchielementiniolish
Vektorlar (Vectors):
Vektorlar, dinamikmassivlarsifatidaishlaydigan STL (Standard Template Library) qisqichda, C++-da mavjud. Ularniishlatishuchunquyidagiamallarnibajarishingizkerak:
1. Vector kutubxonasini (library) qo‘shish:
#include
2. Vector yaratishvama’lumotqo‘shish:
std::vectormyVector; // Bo‘shvektoryaratish
myVector.push_back(10); // Ma’lumotnivektorgaqo‘shish
myVector.push_back(20);
3. Vektordanma’lumotolish:
int value = myVector[0]; // Vektordanma’lumotolish
4. Vektorningo‘lchaminianiqlash:
int size = myVector.size(); // Vektorningo‘lchaminianiqlash
Vektorlarmassivlarganisbatanko‘pmaqbul, chunkiulargao‘lchamnidinamikravishdao‘zgartirishimkoniyatimavjud. Massivlaresao‘lchaminie’lonqilishvao‘zgartirishuchunjoriye’lonqilinishikerakbo‘ladi.
|
| |