dinamik ma'lumotlar tuzilmasi

PDF 12 sahifa 716,4 KB Bepul yuklash

Sahifa ko'rinishi (5 sahifa)

Pastga aylantiring 👇
1 / 12
13-ma’ruza darsi dinamik ma’lumotlar tuzilmasi dinamik ma’lumotlar tuzilmalari — bu dastur bajarilishi davomida o‘zgaruvchan hajmga ega bo‘lgan va xotirani zaruratga ko‘ra ajratish va bo‘shatishga asoslangan tuzilmalardir. ular yordamida foydalanuvchi oldindan aniqlanmagan miqdordagi ma’lumotlarni saqlashi va ularga moslashuvchan ishlov berishi mumkin. bunday tuzilmalar doimiy o‘zgaruvchan yoki noma’lum hajmdagi ma’lumotlar bilan ishlash zarur bo‘lgan holatlarda qo‘llaniladi. masalan, statik massivda uning hajmi oldindan belgilanadi va bajarilish jarayonida o‘zgartirib bo‘lmaydi. bu esa xotira sarfida noqulaylik tug‘diradi: agar kam element saqlansa — ortiqcha xotira isrof bo‘ladi, ko‘p element kiritilsa — joy yetishmasligi muammosi paydo bo‘ladi. dinamik tuzilmalar bu muammoni hal qiladi, chunki ular xotirani faqat kerak bo‘lganda ajratadi va uni kerak bo‘lmagan paytda bo‘shatadi. dinamik ma’lumotlar tuzilmasining ishlash prinsipi ko‘rsatkichlar (pointerlar) yoki havolalar orqali tugunlarni bog‘lashga asoslanadi. har bir tugun o‘zida nafaqat ma’lumot, balki keyingi tugun manzilini (ba’zida oldingi tugunni ham) saqlaydi. shunday qilib, tuzilma o‘zgaruvchan elementlar zanjiri shaklida quriladi. misol sifatida bog‘langan ro‘yxatlarni keltirish …
2 / 12
mlarda, fayl tizimlarida, dasturiy interfeyslar va kompyuter tarmoqlarida keng qo‘llaniladi. ular yordamida o‘zgaruvchan hajmdagi so‘rovlarni boshqarish, ma’lumotlar bazasini yuritish, grafik interfeysdagi hodisalarni kuzatish, marshrutlash va resurslarni taqsimlash kabi ko‘plab amaliy masalalar hal qilinadi. dinamik tuzilmalar bilan ishlashda xatolarga yo‘l qo‘ymaslik muhim ahamiyatga ega. masalan, noto‘g‘ri ko‘rsatkich bilan murojaat qilish yoki xotirani o‘z vaqtida bo‘shatmaslik dastur xatoligiga yoki xotira oqishiga olib keladi. shuning uchun dinamik tuzilmalarni ishlatishda ehtiyotkorlik va tartib muhimdir. shuningdek, zamonaviy dasturlash tillarining aksariyati bu jarayonlarni avtomatlashtirish — masalan, xotirani avtomatik boshqarish (garbage collection) orqali — bunday xatolarni kamaytirishga yordam beradi. xulosa qilib aytganda, dinamik ma’lumotlar tuzilmalari dasturiy ta’minotni moslashuvchan, samarali va ko‘p funksiyali qilish imkonini beradi. ular orqali murakkab algoritmlar va real vaqt tizimlarini qurish, katta hajmdagi ma’lumotlar ustida ishlash va foydalanuvchi ehtiyojlariga mos tizimlar yaratish mumkin. dinamik ma’lumotlar tuzilmalari faqatgina oddiy ma’lumotlarni saqlash uchun emas, balki algoritmlarni samarali qurish uchun ham muhim ahamiyatga ega. ayniqsa, ular rekursiv …
3 / 12
nizmlarida, ma’lumotlar bazasida keng ishlatiladi. graf tuzilmalari esa har xil ob’ektlar orasidagi bog‘liqliklarni ifodalashda qo‘llaniladi. internet sahifalari orasidagi havolalar, shaharlar orasidagi yo‘llar, ijtimoiy tarmoqlardagi foydalanuvchilar orasidagi aloqalar — bularning barchasi graf ko‘rinishida modellashtiriladi. graf ustida ishlov berish algoritmlari orqali eng qisqa yo‘lni topish (masalan, dijkstra algoritmi), barcha tugunlarga eng arzon yo‘lni topish (prim yoki kruskal algoritmlari), sikl mavjudligini aniqlash, yoki komponentlar sonini aniqlash mumkin bo‘ladi. bunday algoritmlarning barchasi dinamik tuzilmalarsiz to‘liq va samarali ishlamaydi. dinamik tuzilmalarning o‘ziga xos xususiyati shundaki, ular ko‘pincha ko‘rsatkichlar (pointers) orqali quriladi. bu esa ularni qulayroq, lekin ayni paytda murakkabroq ham qiladi. har bir yangi element (masalan, ro‘yxatdagi yangi tugun) yangi xotira sohasida yaratiladi va avvalgi tugun unga bog‘lanadi. agar bu bog‘lanish noto‘g‘ri tashkil qilinsa, yoki ko‘rsatkich noto‘g‘ri qiymatni olsa, dasturda xatolik yuz beradi. shu sababli, dinamik tuzilmalarni to‘g‘ri tashkil qilish uchun yaxshi tushuncha va ehtiyotkorlik talab etiladi. bundan tashqari, dinamik tuzilmalar real vaqtli tizimlarda — …
4 / 12
oshiriladi. yuqoridagilardan kelib chiqib, dinamik ma’lumotlar tuzilmalari — bu nafaqat samarali dasturiy ta’minot yaratishning asosi, balki murakkab real dunyo muammolarini kompyuter orqali model qilish imkonini beradigan vositadir. ular dasturchidan chuqur tushuncha va to‘g‘ri loyihalashni talab qiladi, lekin to‘g‘ri qo‘llanganda juda katta afzalliklar beradi. dasturlashda mukammal yechimlar aynan shu turdagi tuzilmalarni to‘g‘ri tanlash va ulardan unumli foydalanishga bog‘liq. dinamik ma’lumotlar tuzilmalari haqida chuqurroq tushunish uchun, ularning har bir asosiy turini ko‘rib chiqamiz va ular qanday ishlashi, qanday holatlarda ishlatilishi haqida tasavvur hosil qilamiz. 1. bog‘langan ro‘yxatlar (linked lists) bu eng sodda va eng ko‘p ishlatiladigan dinamik tuzilmadir. ro‘yxatning har bir elementi tugun (node) deb ataladi va u quyidagilardan iborat bo‘ladi:  ma’lumot (data)  keyingi tugunga ko‘rsatkich (pointer) afzalliklari:  ro‘yxatning istalgan joyiga element qo‘shish yoki o‘chirish oson.  oldindan hajmni belgilash shart emas. kamchiliklari:  qidiruv nisbatan sekinroq.  har bir tugun uchun qo‘shimcha ko‘rsatkich joylashishi kerak (xotira sarfi ortadi). …
5 / 12
isollar:  qavslarni tekshirish  funktsiyalarni rekursiv chaqirish  vaqtincha ma’lumot saqlash 5. navbat (queue) navbat “birinchi kirgan, birinchi chiqadi” (fifo – first in first out) prinsipida ishlaydi. asosiy amallar:  enqueue() — navbat oxiriga element qo‘shish  dequeue() — navbat boshidan element chiqarish qo‘llaniladi:  tizim resurslarini boshqarishda  printer navbatida  tarmoqda paketlar uzatishda 6. daraxtlar (trees) daraxtlar — ierarxik tuzilmalardir. har bir tugun (node) ostida boshqa tugunlar (bolalar) bo‘lishi mumkin. eng mashhur turi: binary search tree (bst) bst — har bir tugun ikki bolaga ega:  chap bola: kichik qiymatlar  o‘ng bola: katta qiymatlar daraxtlar ishlatiladi:  ma’lumotlarni tez izlash  fayl tizimlarini modellashtirish  ma’lumotlarni tartiblash (sorting) 7. graf (graph) graf — tugunlar (vertex) va ular orasidagi bog‘lanishlar (edge) to‘plamidir. graf yo‘nalgan yoki yo‘nalmagan bo‘lishi mumkin. qo‘llaniladi:  ijtimoiy tarmoqlar (do‘stlar, kuzatuvchilar)  yo‘l topish (navigatsiya)  elektr tarmoqlari, oqimlar, marshrutlash dinamik tuzilmalarning dasturiy til …

Ko'proq o'qimoqchimisiz?

Barcha 12 sahifani Telegram orqali bepul yuklab oling.

To'liq faylni yuklab olish

"dinamik ma'lumotlar tuzilmasi" haqida

13-ma’ruza darsi dinamik ma’lumotlar tuzilmasi dinamik ma’lumotlar tuzilmalari — bu dastur bajarilishi davomida o‘zgaruvchan hajmga ega bo‘lgan va xotirani zaruratga ko‘ra ajratish va bo‘shatishga asoslangan tuzilmalardir. ular yordamida foydalanuvchi oldindan aniqlanmagan miqdordagi ma’lumotlarni saqlashi va ularga moslashuvchan ishlov berishi mumkin. bunday tuzilmalar doimiy o‘zgaruvchan yoki noma’lum hajmdagi ma’lumotlar bilan ishlash zarur bo‘lgan holatlarda qo‘llaniladi. masalan, statik massivda uning hajmi oldindan belgilanadi va bajarilish jarayonida o‘zgartirib bo‘lmaydi. bu esa xotira sarfida noqulaylik tug‘diradi: agar kam element saqlansa — ortiqcha xotira isrof bo‘ladi, ko‘p element kiritilsa — joy yetishmasligi muammosi paydo bo‘ladi. dinamik tuzilmalar bu muammoni hal qiladi,...

Bu fayl PDF formatida 12 sahifadan iborat (716,4 KB). "dinamik ma'lumotlar tuzilmasi"ni yuklab olish uchun chap tomondagi Telegram tugmasini bosing.

Teglar: dinamik ma'lumotlar tuzilmasi PDF 12 sahifa Bepul yuklash Telegram