داده ساختارها و مبانی الگوریتمها نیمسالدوم92-93 دانشکدهی مهندسی کامپیوتر مدرس:مسعودصدیقین صباغیان ،میرفندرسکی تمرین پنجم مسئله .1درخت فراگیر گلوگاهی درخت فراگیر گلوگاهی 1برای یک گراف وزندار ،یک درخت فراگیر است که وزن بیشینه یال آن بین تمام درختهای فراگیر مینیمم باشد. )1 ثابت یا رد کنید :هر درخت کمینهی فراگیر 2یک درخت فراگیر گلوگاهی است. )2 ثابت یا رد کنید :هر درخت فراگیر گلوگاهی یک درخت کمینهی فراگیر است. )3 | | الگوریتمی خطی ( | | ) ارائه دهید که با گرفتن یک گراف وزندار (لیست مجاورت گراف) و عدد ،b مشخص کند که وزن بیشینه یال در گراف درخت فراگیر گلوگاهی کمتر یا مساوی bهست یا نه. )4با استفاده از الگوریتم باال ،الگوریتمی خطی ( | | | | ) ارائه دهید که با دریافت یک گراف وزندار (لیست مجاورت گراف) ،درخت فراگیر گلوگاهی گراف را به دست آورد. مسئله .2جدول برعکس یک جدول n×nداریم که در هر سطر و هر ستون آن ،دقیقا یک بار عدد 1و یک بار عدد -1آمده است ،با این شرط که روی قطر اصلی عددی نیست و اگر عدد موجود در خانهی سطر iو ستون jجدول را با نشان دهیم ،داریم: .الگوریتمی ارائه دهید که با جابهجا کردن تعدادی سطر با هم و تعدادی ستون با هم ،تمام 1ها تبدیل به -1شوند و برعکس. مسئله .3دنبالهی de Bruijn دنبالهی de Bruijnبرای عدد nبه یک دنبالهی حلقوی از 0و 1به طول 2nگفته میشود که هر دنبالهی ممکن از 0و 1به طول nدقیقا یک بار در آن ظاهر شده باشد .مثال به ازای ، n=3دنبالهی 11111111یک دنبالهی de Bruijnاست. الگوریتمی ارائه دهید که بتواند یک دنبالهی de Bruijnبسازد( .راهنمایی :یک گراف با 2nرأس در نظر بگیرید که هر رأس آن نشانگر یک دنبالهی nبیتی باشد .دو رأس با دنبالههای هم متصل کنید اگر = و را با یالی جهتدار به ). Bottleneck Spanning Tree Minimum Spanning Tree 1 2 مسئله -k .4دستهبندی nگونهی جانوری a1تا anداریم که برای هر جفت آنها یک فاصله ،به صورت زیر ،تعریف شده است: ⇔ ) ) ( ) ( ( ( ) هر چه فاصلهی دو گونهی جانوری بیشتر باشد ،یعنی شباهت آن دو گونه کمتر است .میخواهیم این جانوران را در k دستهی c1تا ( ck ) ،دستهبندی کنیم .فاصلهی بین دو دسته جانور را ،مینیمم فاصلهی بین تمام جفت جانورهای آن دو ) گروه مینامیم: ( nشی را به نحوی در kدسته قرار دهید که شبیهترین جانوران در یک دسته قرار بگیرند ،به عبارت دیگر ،مجموع فاصلهی بین دستهها بیشترین شود. مسئله .5کوتاهترین مسیر یک درخت با یالهای وزندار داریم .الگوریتمی از مرتبهی زمانی | | ارائه دهید که طول مسیر از یک رأس مشخص به هر رأس دیگر را حساب کند. مسئله .6جد بزرگ یک درخت ریشهدار داریم ،الگوریتمی ارائه دهید که با پیشپردازشی از مرتبهی زمانی | | ،در پاسخ دهد که آیا رأس vجد رأس uهست یا نه. مسئله .7برچسبگذاری در گراف Gرئوس از 1تا nشمارهگذاری شدهاند .میخواهیم برای رأسها برچسب بگذاریم ،به طوری که برچسب هر رأس ،uشمارهی کوچکترین رأسی است که مسیری از آن به uوجود دارد .الگوریتمی از مرتبهی زمانی | | برچسب گذاری ارائه دهید وقتی که: الف) Gگراف بیجهت است. ب) Gگراف جهتدار است. برای مسئله k .8اُمین بهترین الگوریتمی از مرتبهی زمانی ارائه کنید که kاُمین بهترین درخت پوشای کمینه را بیابید. مالحظات: توجه کنید تمرینها نمرهای را در بر نخواهند داشت و فقط جنبهی یادگیری دارند. زمان برگزاری کالس حل تمرین مربوط به این تمرین متعاقبا در فروم اعالم خواهد شد.
© Copyright 2026 Paperzz