Mundarija: Kirish Ro'yxatlar. Amalga oshirish imkoniyatlari ro'yxati


Guruch. 1.1.2.1 Ikki marta bog'langan ro'yxat elementini o'chirish


Download 34.46 Kb.
bet4/12
Sana31.03.2023
Hajmi34.46 Kb.
#1313943
1   2   3   4   5   6   7   8   9   ...   12
Bog'liq
1111Doimiy ustuvor navbat algoritmlari

Guruch. 1.1.2.1 Ikki marta bog'langan ro'yxat elementini o'chirish



2. Navbatlar

2.1 Navbatlar. Navbatni amalga oshirish imkoniyatlari

Navbat - "birinchi kiruvchi - birinchi chiqadi" (FIFO, birinchi kiruvchi - birinchi chiqadi) elementlarga kirish intizomiga ega ma'lumotlar strukturasi. Elementni qo'shish (odatda enqueue - navbatga qo'yish so'zi bilan belgilanadi) faqat navbat oxirida, tanlash - faqat navbat boshidan mumkin, tanlangan element navbatdan olib tashlanadi.

Dasturlash tillarida navbatni amalga oshirishning bir necha usullari mavjud.

2.1.1 Massiv

Birinchi usul navbatni massiv va ikkita butun o'zgaruvchining boshlanishi va tugashi sifatida ifodalaydi.

Guruch. 2.1 Massiv bilan navbatni amalga oshirish

Odatda boshlang'ich navbatning boshiga, oxiri esa navbatga yangi element kirganda to'ldiriladigan elementga ishora qiladi. Navbatga element qo'shilganda, navbatning yangi elementi q[end] ga yoziladi va end bittaga kamayadi. Agar end qiymati 1 dan kichik bo'lsa, biz massiv atrofida aylanamiz va o'zgaruvchining qiymati n ga teng bo'ladi. Navbatdan elementni olib tashlash ham xuddi shunday tarzda amalga oshiriladi: q [start] elementi navbatdan olib tashlangandan so‘ng start o‘zgaruvchisi 1 ga kamayadi. Bunday algoritmlarda n dan bitta katak har doim bo‘sh bo‘ladi (chunki a n elementli navbatni bo'shdan ajratib bo'lmaydi), bu algoritmlarning soddaligi bilan qoplanadi.

Ushbu usulning afzalliklari: ikkinchi usul bilan solishtirganda xotirani biroz tejash mumkin; rivojlantirish osonroq.

Kamchiliklari: Navbatdagi elementlarning maksimal soni massiv hajmi bilan chegaralanadi. U to'lib ketganda, u xotirani qayta taqsimlashni va barcha elementlarni yangi massivga nusxalashni talab qiladi.

2.1.2 Bog'langan ro'yxat

Ikkinchi usul dinamik xotira bilan ishlashga asoslangan. Navbat chiziqli ro'yxat sifatida ifodalanadi, unda elementlarni qo'shish/o'chirish qat'iy ravishda uning tegishli uchlaridan kelib chiqadi.


Download 34.46 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   ...   12




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling