algoritm va ma’lumotlar tuzilmalarini ishlab chiqish

DOCX 28 pages 255.8 KB Free download

Page preview (5 pages)

Scroll down 👇
1 / 28
o’zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xozazmiy nomidagi toshkent axborot texnologiyalari universiteti 1-mustaqil ish mavzu: algoritm va ma’lumotlar tuzilmalarini ishlab chiqish guruh: ise004 bajardi: umirzokov a.u. tekshirdi: raxmonova munisaxon toshkent – 2022 reja 1. ma’lumotlar tuzulmalari o’zi nima? 2. qidirish alogoritmlari 3. saralash usualllari 4. dinamik ma’lumotlar tuzulmasi “yomon dasturchilar o’zlarining kodlari haqida qayg’urishadi, yaxshi dasturchilar esa ma’lumotlar tuzilmalari va ularning bog’lanishlari haqida bosh qotirishadi.” — linus torvalds barcha dastur yoki dasturiy mahsulotning asosida ikkita birlik yotadi: ma’lumotlar va ular ustida qandaydir amallar bajaradigan algoritmlar. algoritmlar ma’lumotlarni biz yoki dastur uchun foydali bo’lgan axborot ko’rinishiga keltirib beradi. algoritmlar shu ma’lumotlar ustida amallarni (o’qish, yozish, yangilash, o’chirish) samarali va tez bajara olishi uchun biz shu ma’lumotlarni ma’lum bir strukturaga solgan holda saqlashimiz kerak bo’ladi. demak shunday qilib, ma’lumotlar tuzilmasi — bu ma’lumotlarni samarali o’qish va o’zgartirish imkonini beruvchi, ma’lumotlarni saqlash va boshqarishning bir formatga solingan shaklidir. soddaroq qilib …
2 / 28
n mumkin bo’lgan qiymatlar; • ushbu ma’lumotlar tuzilmasi ustida bajariladigan amallar (operatsiyalar). asosiy ma’lumotlar tuzilmalari: quyida keltirilgan ma’lumotlar tuzilmalari dasturlashda eng ko’p qo’llaniladigan tuzilmalardir. ularga: 1. massiv (array) 2. bog’langan ro’yhat (linked list) 3. navbat (queue) 4. stek (stack) 5. hash jadvallar (hash tables) 6. daraxtlar (trees) 7. graflar (graph) kiradi. biz bu bo’limda boshidagi 5 ta tuzilma bilan yaqindan tanishib, ularning kuchli va kuchsiz tomonlari va ularni qanday holatlarda ishlatish ma’qulligi haqida gaplashib o’tamiz. qolgan ikkita tuzilma murakkabroq bo’lib ular o’z ichida yana ko’plab turlarga bo’linib ketadi. shuning uchun ularni keyinroqqa qoldiramiz. bundan tashqari barcha tuzilmalarning hamma joyda ingliz tilidagi nomi ishlatilgani va ularning nomi odatda tarjima qilinmaganligi sababli keyingi o’rinlarda men ularning asosan ingliz tilidagi nomlarini ishlataman. turli xildagi ma’lumotlar tuzilmalari nima uchun kerak? ma’lumotlar tuzilmalari nimaligi haqida qisman tasavvurga ega bo’ldingiz va ularning asosiy turlari bilan ham tanishib oldingiz. lekin, shu joyga kelib agar sizda “nima uchun …
3 / 28
incha. shuning uchun, masalan, sizning dasturingizda ma’lumotlar ko’p kiritilib, o’chirilsayu lekin kam o’qilsa, bunda ma’lumotlarni saqlashda arraydan foydalangandan ko’ra linked list qulayroq hisoblanadi. lekin, ko’pincha holatda bir necha ma’lumotlar tuzilmalarini o’zini birlashtirgan gibrid ma’lumotlar tuzilmalaridan ham foydalaniladi. kalitni berilgan argument bilan mosligini aniqlovchi algoritmga berilgan argument bo’yicha qidiruv deb ataladi. qidiruv algoritmining vazifasi kerakli ma’lumotni tuzilmadan (jadvaldan) topish yoki uning yo’qligi aniqlashdan iborat. agar qidirilayotgan ma’lumot yo’q bo’lsa, u holda quyidagi ikkita vazifani amalga oshirish mumkin: · ma’lumot yo’qligini indikatsiya (belgilash) qilish. · tuzilmaga ushbu ma’lumotni qo’shish. ketma-ket qidiruv usuli va uning algoritmi: mazkur ko’rinishdagi qidiruv agar ma’lumotlar tartibsiz yoki ular tuzilishi noaniq bo’lganda qo’llaniladi. bunda ma’lumotlar butun jadval bo’yicha operativ xotirada kichik adresdan boshlab, to katta adresgacha ketma-ket qarab chiqiladi. massivda ketma-ket qidiruv (search o’zgaruvchi topilgan element tartib raqamini saqlaydi). ketma-ket qidiruv algoritmi c++ tilida quyidagicha bo’ladi: int qidiruv(int key) { for (int i=0;i if (k[i]==key) { search = …
4 / 28
usuli yordamida izlab topish dasturi. node *q=null; node *p=lst; while (p !=null){ if (p->k == key){ search = p; return search; } q = p; p = p->nxt; } node *s=new node;; s->k=key; s->r=rec; s->nxt= null; if (q == null){ s->nxt=lst; lst = s; } else q->nxt = s; search= s; return search; ro’yhatli tuzilmaning afzalligi shundan iboratki, ro’yhatga elementni qo’shish yoki o’chirish tez amalga oshadi, bunda qo’shish yoki o’chirish element soniga bog’liq bo’lmaydi, massivda esa elementni qo’shish yoki o’chirish o’rta hisobda barcha elementlarning yarmini siljitishni talab qiladi. ro’yhatda qidiruvning samaradorligi taxminan massivniki bilan bir xil bo’ladi. indeksli ketma-ket qidiruv usuli bu qidiruv amalga oshirilayotganda ikkita jadval tashkil qilinadi: o’z kalitiga ega ma’lumotlar jadvali (o’sish tartibida tartiblangan) va indekslar jadvali. bu yerda birinchi berilgan argument bo’yicha indekslar jadvalidan ketma-ketlikda qidirish amalga oshiriladi. kalitlarni ko’rib chiqishda berilgan kalitdan kichigi topilsa, u holda ushbu kichik kalitni asosiy jadvaldagi qidirishning eng quyi chegarasi …
5 / 28
i yana o’rta elementga teng emas, katta. endi qidiruvning chap chegarasi (midd + 1) ga joylashadi. uchinchi qadamda o’rta element 3 indeksli elementga teng: (3 + 4) / 2 = 3. u kalitga teng. algoritm o’z ishini yakunlaydi. ma’lumotlar tuzilmasi elementlarini saralash usullari saralash – bu tuzilma elementlarini qandaydir kriteriya asosida tartiblash. kriteriya sifatida odatda kalit deb ataluvchi sonli maydon qo’llaniladi. elementlarni kalit maydonlarining har bir keyingisi o’zidan oldingisidan kichik bo’lsa, bunday saralash kamayish tartibida saralash deyiladi. agarda har bir keyingi kalit maydoni o’zidan oldingisidan katta bo’lsa, o’sish tartibida saralash deyiladi. saralash algoritmi – bu elementlarni saralash uchun qo’llaniladigan algoritm hisoblanadi. saralash maqsadi – ma’lumotlarni qayta ishlashda berilgan qiymat (kalit) bo’yicha elementni qidirib topishni yengillashtirishdan iborat saralashning barcha algoritmlari ikki guruhga bo’linadi: - ichki saralash algoritmlari (massivda (ichki xotirada) saralash uchun qo’llaniladi); - tashqi saralash algoritmlari (faylda (tashqi xotirada) saralash uchun qo’llaniladi). agar saralanayotgan yozuvlar xotirada katta xajmni egallasa, u …

Want to read more?

Download all 28 pages for free via Telegram.

Download full file

About "algoritm va ma’lumotlar tuzilmalarini ishlab chiqish"

o’zbekiston respublikasi axborot texnologiyalari va kommunikatsiyalarini rivojlantirish vazirligi muhammad al-xozazmiy nomidagi toshkent axborot texnologiyalari universiteti 1-mustaqil ish mavzu: algoritm va ma’lumotlar tuzilmalarini ishlab chiqish guruh: ise004 bajardi: umirzokov a.u. tekshirdi: raxmonova munisaxon toshkent – 2022 reja 1. ma’lumotlar tuzulmalari o’zi nima? 2. qidirish alogoritmlari 3. saralash usualllari 4. dinamik ma’lumotlar tuzulmasi “yomon dasturchilar o’zlarining kodlari haqida qayg’urishadi, yaxshi dasturchilar esa ma’lumotlar tuzilmalari va ularning bog’lanishlari haqida bosh qotirishadi.” — linus torvalds barcha dastur yoki dasturiy mahsulotning asosida ikkita birlik yotadi: ma’lumotlar va ular ustida qandaydir amallar bajaradigan algoritmlar. algoritmlar ma’lumot...

This file contains 28 pages in DOCX format (255.8 KB). To download "algoritm va ma’lumotlar tuzilmalarini ishlab chiqish", click the Telegram button on the left.

Tags: algoritm va ma’lumotlar tuzilma… DOCX 28 pages Free download Telegram