amaliy mashg‘ulot: ma’lumotlarni saralash algoritmlari va dasturlarini ishlab chiqish.

DOCX 19 pages 582.9 KB Free download

Page preview (5 pages)

Scroll down 👇
1 / 19
6-amaliy mashg‘ulot: ma’lumotlarni saralash algoritmlari va dasturlarini ishlab chiqish. ishdan maqsad: ushbu amaliyot ishining maqsadi talabalar qanday saralash usullari va algoritmlari mavjudligini va ularning samaradorliklarini baholashni o‘rganishlari kerak. shu asosda saralash usullarini qiyosiy tahlil qilishlari, c++ dasturlash tilida fayllar bilan ishlashni va ularga oid dasturlar tuzishni o‘zlashtirishlari kerak. qo‘yilgan masala: talabalar topshiriq variantiga mos saralash usuli 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. pufakchali usuli bilan saralash algoritmi. bunday usul karta o‘yinida keng qo‘llaniladi. elementlar (kartalar) hayolan “tayyor” a(1),...,a(i-1) va boshlang‘ich ketma-ketliklarga bo‘linadi. har bir qadamda (i=2 dan boshlanib, har bir qadamda bir birlikka oshirib boriladi) boshlang‘ich ketma-ketlikdan i-chi element ajratib olinib tayyor ketma-ketlikning kerakli joyiga qo‘yiladi. pufakcha orqali saralash algoritmi quyidagicha bo‘ladi: for (int i = n-1; i >= …
2 / 19
tilmasada, kichik n larda mazkur usullar tezroq ishlaydi. shu joyni o‘zida qat’iy usullarni ishlash tamoyillariga ko‘ra 3 ta toifaga bo‘lish mumkin: 1. to‘g‘ridan-to‘g‘ri qo‘shish usuli (by insertion); 1. to‘g‘ridan-to‘g‘ri tanlash usuli (by selection); 1. to‘g‘ridan-to‘g‘ri almashtirish usuli (by exchange). 1-misol: dastur kodi: #include using namespace std; int main() { int n; cout >n; int a[n]; cout >a[i]; } for (int i = n-1; i >= 1; i--) { for (int j = 0; j a[j+1]) { swap(a[j],a[j+1]); } } } for (int i = 0; i std::vector myvector; // vector tuzish myvector.push_back(42); // ma’lumot qo‘shish 3. iteratorlar: - iteratorlar konteynerlar ichidagi ma’lumotlarga erishish va ularga murojaat qilish uchun foydalaniladi. asosiy konteynerlar bilan ishlayotgan har qanday operatsiyada iteratorlardan foydalanish mumkin. std::vector myvector; std::vector ::iterator it = myvector.begin(); // boshlang‘ich iterator it++; // iteratorni olib chiqish 4. iterator turkumlari: - har bir konteyner turida o‘zining iterator turi mavjud. masalan, `begin()` va end() …
3 / 19
misol orqali `std::vector` ni ishlatishni o‘rganing: #include #include int main() { std::vector myvector; myvector.push_back(42); myvector.push_back(56); myvector.push_back(78); for (int i = 0; i #include #include int main() { std::list my_list = { 12, 5, 10, 9 }; for (int x : my_list) { std::cout #include using namespace std; int main() { list l = {1,2,3,4,5}; list ::iterator it = l.begin(); list new_l = {10,20,30,40}; // new list new_l.insert (new_l.begin(), l.begin(), l.end()); l.insert(l.begin(), 5, 10); // insert 10 before beginning 5 times for (int x : new_l) { }return0;} push_back va push_front funktsiyalari push_back (element) usuli elementlarni orqa tomondan ro‘yxatga kiritish uchun ishlatiladi. push_front (element) usuli elementlarni ro‘yxatdan old tomondan surish uchun ishlatiladi. #include #include #include int main() { std::list l ={7, 5, 16, 8}; l.push_front(25); l.push_back(13); auto it =std::find(l.begin(), l.end(), 16); if(it != l.end()){ l.insert(it, 42); } for(int n : l){ std::cout #include #include int main() { std::list l ={7, 5, …
4 / 19
omonlama navbat hisoblanadi. ya’ni (double ended queues) ikkala uchli navbat - bu ikkala uchida kengayish va qisqarish xususiyatiga ega bo'lgan ketma-ket konteynerlar.ular vektorlarga o'xshash, ammo elementlarni kiritish va yo'q qilishda samaraliroq. vektorlardan farqli o'laroq, tutashgan joy ajratilishini kafolatlash mumkin emas. dek, asosan ma'lumotlar tuzilmasining ikki tomonlama navbatini amalga oshirishdir. navbatdagi ma'lumotlar tuzilishi faqat oxiriga qo'shib, old tomondan o'chirishga imkon beradi. bu haqiqiy hayotdagi navbatga o'xshaydi, unda odamlar old tomondan olib tashlanadi va orqada qo'shiladi. ikkala tugagan navbat - bu qo'shilish va o'chirish operatsiyalari ikkala uchida ham mumkin bo'lgan navbatlarning alohida holati. topshiriq 10-amaliy mashg‘ulot: daraxtsimon ma’lumotlar tuzilmalarini qayta ishlash algoritmlari va dasturlarini tuzish. ishdan maqsad. ushbu amaliyot ishida talabalar daraxtsimon ma’lumotlar tushunchasi bilan tanishib chiqishi hamda daraxt balandligi va binar daraxtlar ustida amallar bajarish qo‘yilgan masala. talabalar topshiriq variantiga mos ravishda binar darxtlar ustida berilgan amallar bilan ishlash ko‘nikmasiga ega bo‘lishlari kerak. ish tartibi: · tajriba ishi nazariy ma’lumotlarini o‘rganish; …
5 / 19
hun daraxtlar? 1. daraxtlardan foydalanishning bir sababi tabiiy ravishda ierarxiyani shakllantiradigan ma’lumotlarni saqlamoqchi bo‘lganligingiz bo‘lishi mumkin. masalan, kompyuterdagi fayl tizimi(7-rasm): 7-rasm. daraxt ma’lumotlar tuzilmasini fayl tizimlariga tadbiqi. 2. daraxtlar (ba’zi buyurtma bilan, masalan, bst) o‘rtacha kirish / qidirishni ta’minlaydi (bog‘langan ro‘yxatdan tezroq va massivlardan sekinroq). 3. daraxtlar o‘rtacha kiritishni / o‘chirishni ta’minlaydi (arraylardan tezroq va tartibsiz bog‘langan ro‘yxatlarga qaraganda sekinroq). 4. bog‘langan ro‘yxatlar singari va massivlardan farqli o‘laroq, daraxtlar tugunlar sonining yuqori chegarasiga ega emas, chunki tugunlar ko‘rsatgichlar yordamida bog‘langan. daraxtlarning asosiy dasturlariga quyidagilar kiradi: 1. ierarxik ma’lumotlarning manipulyatsiyasi. 2. ma’lumotni qidirishni osonlashtiring (daraxtlarni kesib o‘tishga qarang). 3. ma’lumotlarning saralangan ro‘yxatlarini manipulyatsiya qilish. 4. vizual effektlar uchun raqamli tasvirlarni kompozitsiya qilish uchun ish oqimi sifatida. 5. router algoritmlari 6. ko‘p bosqichli qaror qabul qilish shakli (qarang biznes shaxmat). ikkilik daraxt: elementlari ko‘pi bilan 2 ta bolaga ega bo‘lgan daraxt binar daraxt deb ataladi. ikkilik daraxtdagi har bir element faqat 2 …

Want to read more?

Download all 19 pages for free via Telegram.

Download full file

About "amaliy mashg‘ulot: ma’lumotlarni saralash algoritmlari va dasturlarini ishlab chiqish."

6-amaliy mashg‘ulot: ma’lumotlarni saralash algoritmlari va dasturlarini ishlab chiqish. ishdan maqsad: ushbu amaliyot ishining maqsadi talabalar qanday saralash usullari va algoritmlari mavjudligini va ularning samaradorliklarini baholashni o‘rganishlari kerak. shu asosda saralash usullarini qiyosiy tahlil qilishlari, c++ dasturlash tilida fayllar bilan ishlashni va ularga oid dasturlar tuzishni o‘zlashtirishlari kerak. qo‘yilgan masala: talabalar topshiriq variantiga mos saralash usuli 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 topshiri...

This file contains 19 pages in DOCX format (582.9 KB). To download "amaliy mashg‘ulot: ma’lumotlarni saralash algoritmlari va dasturlarini ishlab chiqish.", click the Telegram button on the left.

Tags: amaliy mashg‘ulot: ma’lumotlarn… DOCX 19 pages Free download Telegram