سورس کد تعیین درخت پوشای مینیمم با الگوریتم کروسکال به زبان سی پلاس پلاس در محیط ++Dev-C نوشته شده است. این برنامه مناسب برای دانشجویان و علاقه مندان به درس ساختمان داده و طراحی الگوریتم می باشد. الگوریتم کروسکال یکی از الگوریتم های تعیین درخت پوشای مینیمم است.
برنامهنویس: تیم برنامه نویسی پی استور
متشکل از اساتید و فارغ التحصیلان رشته های فنی - مهندسی
تیم برنامه نویسی پی استور یکی از اولین گروه های تشکیل شده در مجموعه آموزشی پی استور می باشد. این تیم از اساتید مجرب و فارغ التحصیلان رشته های فنی و مهندسی تشکیل شده که در زمینه های مختلف برنامه نویسی و تهیه سورس کد فعال هستند.
حل درخت پوشای مینیمم با الگوریتم کروسکال در سی پلاس پلاس
الگوریتم کروسکال در سی پلاس پلاس برای حل مسئله درخت پوشای کمینه محصولی است که در این پست به آن پرداخته شده است. الگوریتم کروسکال یک روش حریصانه Heuristic در علوم کامپیوتر می باشد. از این الگوریتم برای حل مسئله درخت پوشا کمینه استفاده می شود. درخت پوشای کمینه یا همان مینیمم که به اصطلاح (MST (Minimum Spanning Tree نیز گفته می شود درختی است که در آن مجموع وزن لبه به حداقل برسد و تمامی گره ها یا راس ها شامل شود. در ادامه به توضیح کامل الگوریتم کروسکال در ++c اشاره خواهد شد. برای مشاهده توضیحات کامل در مورد الگوریتم کروسکال به روی این لینک (+) کلیک کنید.
الگوریتم کروسکال Kruskal’s algorithm
الگوریتم کروسکال برای پیدا کردن درخت پوشا بدین صورت عمل می کند ابتدا گراف G با n رأس را در نظر بگيريد.
1. تمام یال ها را به طور صعودی بر حسب وزن مرتب کنید.
2. درخت T را متشکل از گره های G بدون یال را ايجاد کنيد.
3. عملیات زیر را n-1 بارتکرار کنید:
4. یک یال با حداقل وزن را به درخت T اضافه کنید به طوری که حلقه ایجاد نشود.
گاهی چند يال دارای يک وزن هستند، در اين حالت ترتيب يال هایی که انتخاب می شوند مهم نيست. درخت های پوشای حداقل مختلفی ممکن است حاصل شود اما مجموع وزن آنها هميشه يکسان و حداقل می شود. پيچيدگی زمانی الگوريتم (O(mn می شود. که m تعداد يال ها و n تعداد رئوس گراف G است. روند کلی الگوریتم برای یک مثال بصورت زیر است.
الگوریتم کروسکال در سی پلاس پلاس
پیاده سازی الگوریتم Kruskal’s در c++ شامل توابعی است که مراحل بالا را انجام می دهد قسمتی از سورس کد الگوریتم کروسکال در ++C به صورت زیر است.
int main() { /* Let us create following weighted graph 10 0--------1 | \ | 6| 5\ |15 | \ | 2--------3 4 */ int V = 4; // Number of vertices in graph int E = 5; // Number of edges in graph struct Graph* graph = createGraph(V, E); // add edge 0-1 graph->edge[0].src = 0; graph->edge[0].dest = 1; graph->edge[0].weight = 10; // add edge 0-2 graph->edge[1].src = 0; graph->edge[1].dest = 2; graph->edge[1].weight = 6; // add edge 0-3 graph->edge[2].src = 0; graph->edge[2].dest = 3; graph->edge[2].weight = 5; // add edge 1-3 graph->edge[3].src = 1; graph->edge[3].dest = 3; graph->edge[3].weight = 15; // add edge 2-3 graph->edge[4].src = 2; graph->edge[4].dest = 3; graph->edge[4].weight = 4; KruskalMST(graph); return 0; }
خروجی حاصل از اجرای الگوریتم نیز بصورت زیر خواهد بود.
Following are the edges in the constructed MST 2 -- 3 == 4 0 -- 3 == 5 0 -- 1 == 10
ویدئوی معرفی محصول
درباره محصول
این محصول تحت عنوان سورس کد تعیین درخت پوشای مینیمم با الگوریتم کروسکال به زبان سی پلاس پلاس ++C در محیط ++Dev-C نوشته شده است. این برنامه مناسب برای دانشجویان و علاقه مندان به درس ساختمان داده و طراحی الگوریتم می باشد چرا که دارای کد های روان و قابل فهم و آسان برای یادگیری می باشد. خرید محصول توسط کلیه کارت های شتاب امکان پذیر است و بلافاصله پس از خرید، لینک دانلود محصول در اختیار شما قرار خواهد گرفت. کیفیت محصول توسط کارشناسان پی استور تضمین می شود.
مباحث مرتبط با الگوریتم کروسکال ( تعیین درخت پوشای مینمم)
مباحث پیشنهادی در سی پلاس پلاس
تاریخ انتشار: | 29 اسفند 1397 |
---|---|
تاریخ بروزرسانی: | 18 شهریور 1398 |
حجم فایل: | 0.8 مگابایت |
فرمت فایل | CPP |
نسخه: | 2.0 |
هماهنگی با: | Dev-C++ 5 و بالاتر |
تاکنون 275 نفر این محصول را تهیه کرده اند و 3 نظر برای آن ثبت شده است.
نظرات و دیدگاه ها
قوانین ثبت دیدگاه
- لطفاً دیدگاه های خود را فارسی تایپ کنید.
- دیدگاه های نامرتبط به مطلب تایید نخواهد شد.
- از درج دیدگاه های تکراری پرهیز نمایید.
- سوالات تخصصی خودتان را از طریق تیکت پشتیبانی مطرح کنید.
قیمت 39,000 تومان
تاریخ انتشار: | 29 اسفند 1397 |
---|---|
تاریخ بروزرسانی: | 18 شهریور 1398 |
حجم فایل: | 0.8 مگابایت |
فرمت فایل | CPP |
نسخه: | 2.0 |
هماهنگی با: | Dev-C++ 5 و بالاتر |
3 بازخورد (مشاهده نظرات)
قیمت: 39,000 تومان
مینا
بسیار عالی
مدیریت و پشتیبانی
نظرات و دیدگاه های خود را با ما در میان بگذارید
مدیریت و پشتیبانی
نظرات و پیشنهادات خود را با ما درمیان بگذارید.