Tatu samarqand filiali


Mustaqil yechish uchun masalalar



Yüklə 0,6 Mb.
səhifə3/12
tarix30.04.2022
ölçüsü0,6 Mb.
#56764
1   2   3   4   5   6   7   8   9   ...   12
Mustaqil yechish uchun masalalar

Quyidagi grafdan foydalanib, 1-uchdan 6-uchgacha eng yaqin masofa va yo’nalishni aniqlash dasturini Prim, Xoffman va Kraskal algoritmlaridan foydalanib dastur tuzing va natijalarni taqqoslab tahlil qiling




14.1 Laboratoriya mashg’uloti

Mavzu: Graf erkin uchlarini ajratish masalasi

Ishning maqsadi: Grafning erkin uchlarini ajratish masalaasiga namunalar ko’rish va graflarga doir masalalar yechish

Kerakli jihozlar: Kompyuter, C++ dasturlash muhiti

Grafikdagi cho'qqilar to'plami, agar bu to'plamning ikkita uchi bir chekka bilan bog'lanmagan bo'lsa, mustaqil deyiladi. Boshqacha qilib aytadigan bo'lsak, ushbu to'plam tomonidan induktsiya qilingan pastki grafik izolyatsiya qilingan tepalardan iborat. Shuningdek, ba'zida grafikning har bir chekkasi mustaqil to'plamning ko'pi bilan bitta cho'qqisiga to'g'ri keladi, deb ham aytiladi. Tanib olish masalasi (hal qilish masalasi) quyidagicha ko'rinadi: berilgan G grafigi k o'lchamdagi mustaqil to'plamga egami?

Unga mos keladigan optimallashtirish masalasi mustaqil to'plam masalasi deb ham ataladi, quyidagicha tuzilgan: berilgan G grafigida maksimal o'lchamdagi mustaqil to'plamni topish talab qilinadi. Bu o'lcham mustaqillik soni, ichki zichlik soni yoki bo'shlik deb ataladi va a (G) bilan belgilanadi.

1-rasm. 9 ta ko'k burchakning mustaqil to'plami

Bu masala ba'zan eng katta mustaqil to'plamni topish deb ataladi. Ushbu kontseptsiyani maksimal mustaqil to'plam yoki qo'shilish orqali maksimal mustaqil to'plam bilan aralashtirib yubormaslik kerak, bu shunday mustaqil cho'qqilar to'plami sifatida belgilanadiki, unga asl grafikning yana bitta (har qanday) cho'qqisi qo'shilsa, u to'xtaydi. mustaqil bo'ling (umuman aytganda, bunday to'plamlar bir nechta va turli o'lchamdagi bo'lishi mumkin). Inklyuziya-maksimal mustaqil to'plam har doim ham eng katta emas. Shu bilan birga, har bir eng katta mustaqil to'plam, ta'rifiga ko'ra, qo'shilish bo'yicha ham maksimaldir. Qo'shilish bo'yicha (ba'zi) maksimal mustaqil to'plamni topish uchun polinom vaqtida ishlaydigan ochko'z algoritmdan foydalanish mumkin, eng katta mustaqil to'plam masalasi esa NP-to'liq masalalar sinfiga tegishli.

Optimal quyistruktura masalasi

Daraxtning tuzilishi bu masalani hal qilishni taklif qiladi. Ya'ni, har qanday cho'qqini daraxtning ildizi sifatida belgilaymiz va uni r deb ataymiz. U(r) da ildiz otgan pastki daraxtning eng katta mustaqil choʻqqilar toʻplamining oʻlchamini bildirsin. U holda masalaning javobi I(r).

Ko’rinib turibdiki, agar u cho'qqini eng katta mustaqil to'plamga kiritsak, u holda uning asosiyligi 1 ga ortadi, lekin biz uning bolalarini ololmaymiz (chunki ular u cho'qqi bilan chekka bilan bog'langan); agar biz bu cho'qqini kiritmasak, u holda eng katta mustaqil to'plamning kardinalligi ushbu cho'qqining mustaqil to'plamlari o'lchamlari yig'indisiga teng bo'ladi. Masalani hal qilish uchun ushbu ikkita variantdan maksimalini tanlash qoladi:



bu yerda grandchild cho‘qqining istalgan “nabirasi”ni, child esa cho‘qqining har qanday avlodini bildiradi.

function get_independent_set(Node u)

{


Agar I(u) allaqachon hisoblangan, keyin I(r) ni qaytaring

// to'plamning aniqligi, agar u uchini olmasak, olinishi mumkin children_sum = 0

grandchildren_sum = 0

// barcha child uchun sikl

for i := 1 to child_num do

children_sum = children_sum + get_independent_set(children[i])

// barcha nabiralar uchun sikl

for i:= 1 to grandchildren_num

grandchildren_sum = grandchildren_sum + get_independent_set(grandchildren[i])

// qayta hisoblamaslik uchun eslab qoling

I(u) = max(1 + grandchildren_sum, children_sum)

возвратить I(u)

}


Yüklə 0,6 Mb.

Dostları ilə paylaş:
1   2   3   4   5   6   7   8   9   ...   12




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin