chiziqli bog'langan ro‘yxatlar darsi

PDF 8 sahifa 803,2 KB Bepul yuklash

Sahifa ko'rinishi (5 sahifa)

Pastga aylantiring 👇
1 / 8
8-ma’ruza darsi mavzu: chiziqli bog'langan ro’yxatlar. bog’langan ro’yxatlar haqida tushunchalar. bog'langan ro’yxatlar klassifikatsiyasi, chiziqli bog’langan ro’yxatlarni mantiqiy tasvirlash. reja: 1. kirish 2. chiziqli bog‘langan ro‘yxatlarni mantiqiy tasvirlash 3. chiziqli bog’langan ro’yxatlarni mantiqiy tasvirlash va tushunchalar kirish chiziqli bog‘langan ro‘yxatlar — bu ma’lumotlar tuzilmasi bo‘lib, har bir element boshqa element bilan bog‘langan tugun (node) shaklida saqlanadi. har bir tugun ikkita asosiy qismdan iborat: ma’lumot qismi – tugunda saqlanadigan qiymat. ko‘rsatkich (pointer) – keyingi tugunga ishora qiladi. chiziqli bog‘langan ro‘yxatlar dasturlashda eng muhim ma'lumot tuzilmalaridan biri hisoblanadi. ular oddiy massivlardan farqli o‘laroq, ma'lumotlarni dinamik tarzda saqlashga va ulardan samarali foydalanishga imkon beradi. bog‘langan ro‘yxatlar elementlari (tugunlari) bir-biri bilan bog‘langan bo‘lib, har bir tugun ma'lumot va keyingi tugunga ishoradan iborat bo‘ladi. dastlab, chiziqli bog‘langan ro‘yxat tushunchasini oddiy misol orqali tushuntirib o‘tamiz. masalan, oddiy massivni olaylik: massiv: [10, 20, 30, 40] bu massivda har bir element ketma-ket joylashgan va biz indeks orqali ularni oson …
2 / 8
a (pointer) ni saqlaydi. oxirgi tugun esa none yoki null qiymatga ishora qiladi. misol tariqasida quyidagi bosqichni qarab o’tsak: kredit jadvali odatda oyma-oy to‘lovlarni, qarzdorlik miqdorini va foizlarni o‘z ichiga oladi. har bir to‘lov bo‘yicha ma’lumotlar (oy, to‘lov miqdori, foizlar, qolgan qarz) tugun (node) sifatida saqlanishi va keyingi oy uchun tugunga ulanib ketishi mumkin. masalan, bir bog‘langan ro‘yxat (singly linked list) dan foydalanib, har bir tugunda quyidagi ma’lumotlarni saqlash mumkin: oy raqami to‘lov miqdori foiz to‘lovi asosiy qarz to‘lovi qolgan qarz keyingi tugunga havola (pointer) python’da oddiy misol: class kredittugun: def __init__(self, oy, tolov, foiz_tolovi, asosiy_tolov, qolgan_qarz): self.oy = oy self.tolov = tolov self.foiz_tolovi = foiz_tolovi self.asosiy_tolov = asosiy_tolov self.qolgan_qarz = qolgan_qarz self.next = none # keyingi tugunga havola class kreditjadvali: def __init__(self): self.bosh = none # kredit jadvalining boshlang‘ich tuguni def tugun_qo‘shish(self, oy, tolov, foiz_tolovi, asosiy_tolov, qolgan_qarz): yangi_tugun = kredittugun(oy, tolov, foiz_tolovi, asosiy_tolov, qolgan_qarz) if not self.bosh: self.bosh = …
3 / 8
agi kitoblarni navbati kutubxonada kitoblarni qabul qilish va tarqatish jarayoni chiziqli bog‘langan ro‘yxat orqali boshqarilishi mumkin. har bir kitob ro‘yxatga qo‘shiladi, kitob o‘quvchi tomonidan qaytarilganda ro‘yxatdan chiqariladi. – element qo‘shish – yangi kitob keldi → ro‘yxatga qo‘shiladi. – elementni o‘chirish – kitob o‘quvchiga berildi → ro‘yxatdan o‘chiriladi. misol 2: taksi buyurtmalari navbati (queue system) taksi xizmatida buyurtmalar chiziqli bog‘langan ro‘yxat yordamida boshqarilishi mumkin. har bir buyurtma ro‘yxatga oxiridan qo‘shiladi va birinchi buyurtma bajarilgandan so‘ng ro‘yxatdan boshidan o‘chiriladi. – yangi mijoz buyurtma qiladi – ro‘yxatga yangi tugun qo‘shiladi. – buyurtma bajarildi – eng oldingi tugun ro‘yxatdan o‘chiriladi. misol 3: musiqa pleyeridagi qo‘shiqlar navbati musiqa pleyeridagi playlist ham chiziqli bog‘langan ro‘yxat kabi ishlaydi. har bir qo‘shiq keyingisiga ulanadi va foydalanuvchi qo‘shiqni almashtirganda navbatdagi qo‘shiqga o‘tadi. – yangi qo‘shiq qo‘shish – tugun sifatida ro‘yxatga qo‘shiladi. – keyingi qo‘shiqni ijro qilish – hozirgi qo‘shiq ro‘yxatdan o‘chiriladi va keyingisi boshlanadi. bog‘langan ro‘yxatning afzalliklari – dinamik …
4 / 8
[10 | *] → [20 | *] → [30 | none] bu yerda:  head – ro‘yxatning birinchi tuguni.  har bir [data | next] blok tugunni ifodalaydi.  next keyingi tugunga ishora qiladi.  none oxirgi element ekanligini bildiradi. 2. ikki bog‘langan ro‘yxat (doubly linked list) bu ro‘yxat har bir tugunda oldingi (prev) va keyingi (next) elementlarga bog‘langan maydonlarga ega. mantiqiy tasviri: none ← [data | prev | next] ↔ [data | prev | next] ↔ [data | prev | next] → none agar quyidagi elementlar bo‘lsa: 10 ↔ 20 ↔ 30 bu quyidagicha ko‘rinadi: none ← [10 | none | *] ↔ [20 | * | *] ↔ [30 | * | none] → none  har bir tugunda ikkita ko‘rsatkich (prev, next) bor.  ro‘yxatning boshi oldingi (prev) maydonida none bo‘ladi.  ro‘yxatning oxiri keyingi (next) maydonida none bo‘ladi. 3. halqali bog‘langan ro‘yxat (circular linked list) bu …
5 / 8
ish algoritmlari qanday ishlaydi? 8. chiziqli bog‘langan ro‘yxatni qaysi holatlarda ishlatish maqsadga muvofiq? 9. bog‘langan ro‘yxatlar bilan ishlashda qanday algoritmik qiyinchiliklar mavjud? 10. bog‘langan ro‘yxatlarda qidirish va teskari tartibda chiqarish qanday amalga oshiriladi? adabiyotlar ro‘yxati 1. cormen t., leiserson c., rivest r., stein c. – introduction to algorithms, mit press, 2009. 2. horowitz e., sahni s., anderson-freed s. – fundamentals of data structures in c, computer science press, 1995. 3. lafore r. – data structures and algorithms in java, sams publishing, 2002. 4. aho a. v., hopcroft j. e., ullman j. d. – data structures and algorithms, addison-wesley, 1983. 5. goodrich m., tamassia r. – data structures and algorithms in python, wiley, 2013. 6. skiena s. – the algorithm design manual, springer, 2020. 7. neapolitan r., naimipour k. – foundations of algorithms, jones & bartlett learning, 2010. 8. weiss m. a. – data structures and algorithm analysis in c++, pearson, …

Ko'proq o'qimoqchimisiz?

Barcha 8 sahifani Telegram orqali bepul yuklab oling.

To'liq faylni yuklab olish

"chiziqli bog'langan ro‘yxatlar darsi" haqida

8-ma’ruza darsi mavzu: chiziqli bog'langan ro’yxatlar. bog’langan ro’yxatlar haqida tushunchalar. bog'langan ro’yxatlar klassifikatsiyasi, chiziqli bog’langan ro’yxatlarni mantiqiy tasvirlash. reja: 1. kirish 2. chiziqli bog‘langan ro‘yxatlarni mantiqiy tasvirlash 3. chiziqli bog’langan ro’yxatlarni mantiqiy tasvirlash va tushunchalar kirish chiziqli bog‘langan ro‘yxatlar — bu ma’lumotlar tuzilmasi bo‘lib, har bir element boshqa element bilan bog‘langan tugun (node) shaklida saqlanadi. har bir tugun ikkita asosiy qismdan iborat: ma’lumot qismi – tugunda saqlanadigan qiymat. ko‘rsatkich (pointer) – keyingi tugunga ishora qiladi. chiziqli bog‘langan ro‘yxatlar dasturlashda eng muhim ma'lumot tuzilmalaridan biri hisoblanadi. ular oddiy massivlardan farqli o‘laroq, ma'lumotlarni dinamik tarzda...

Bu fayl PDF formatida 8 sahifadan iborat (803,2 KB). "chiziqli bog'langan ro‘yxatlar darsi"ni yuklab olish uchun chap tomondagi Telegram tugmasini bosing.

Teglar: chiziqli bog'langan ro‘yxatlar … PDF 8 sahifa Bepul yuklash Telegram