تخفیف نوروزی پی استور
هزینه سفارش:
۹۹,۰۰۰ تومان
الگوریتم sollin در پایتون عنوان سورس کدی است که در این پست به آن پرداخته میشود. برای تعیین درخت پوشای کمینه الگوریتمهای زیادی وجود دارد یکی از این الگوریتمها الگوریتم سولین Sollin میباشد. در ادامه به تشریح این مسئله خواهیم پرداخت.
الگوریتم sollin در پایتون عنوان سورس کدی است که در این پست به آن پرداخته میشود. برای تعیین درخت پوشای کمینه الگوریتمهای زیادی وجود دارد یکی از این الگوریتمها الگوریتم سولین Sollin میباشد. در ادامه به تشریح این مسئله خواهیم پرداخت.
الگوریتم سولین یا Sollin راهی برای پیدا کردن درخت پوشای کمینه است. یک درخت پوشای مینیمم درختی است که در آن مجموع وزن لبه به حداقل برسد. این اولین الگوریتمی بود که در سال ۱۹۲۶ برای پیدا کردن درخت پوشای کمینه MSTs طراحی شد. آقای Otakar Boruvka از آن برای یافتن مسیریابی کارآمدترین شبکه برق استفاده کرده است. الگوریتمها و روشهای زیادی برای پیدا کردن درخت پوشای حداقل وجود دارد. الگوریتم Boruvka یک الگوریتم حریصانه است و مشابه الگوریتم Kruskal و الگوریتم Prim است.
این روش اساساً حد وسط بین دو الگوریتم کروسکال و پریم است. این الگوریتم اغلب با نام الگوریتم بروکا نیز شناخته میشود. در کتابهای ساختمان داده اغلب از این روش با نام الگوریتم سولین یاد میشود. برای یادگیری هر چه بهتر الگوریتم به مقالهای تحت عنوان الگوریتم سولین در همین سایت مراجعه کنید که به طور مفصل مراحل این الگوریتم در آن توضیح داده شده است.
بر خلاف الگوریتمهای پریم و راشال – کروسکال که در هر مرحله فقط یک لبه به درخت اضافه میکردند در الگوریتم سولین چندین لبه را برای درخت اضافه میکند. در ابتدا یک مرحله لبههای انتخاب شده، همراه با تمام n راس گراف، تشکیل یک درخت پوشا را میدهند. در خلال یک مرحله یک لبه برای هر درخت انتخاب میشود که دارای حداقل هزینه بوده یعنی اینکه دقیقاً دارای یک راس در درخت میباشد. از آنجا که دو درخت در جنگل میتوانند یک لبه یکسان انتخاب کنند، لذا میتوان کپی تکراری لبهها را حذف کرد.
در ابتدای مرحله اول مجموعه لبههای انتخاب شده خالی است. این الگوریتم هنگامی پایان مییابد که فقط یک درخت در انتهای یک مرحله باقی و یا هیچ لبهای برای انتخاب باقی نمانده باشد. شکل زیر روند اجرای الگوریتم سولین را نشان میدهد.
پیاده سازی الگوریتم سولین در Python شامل توابعی است که مراحل بالا را انجام میدهد. به دلیل محدودیت در شکل گرافیکی در Python این کار با ورود اعداد و ارقام انجام میشود. مثلاً برای کشیدن گراف بایستی تعداد گرهها و یالها و هزینه هر یال بصورت دستی انجام میشود. قسمتی از سورس کد الگوریتم sollin در پایتون به صورت زیر است.
from collections import defaultdict #Class to represent a graph class Graph: def __init__(self,vertices): self.V= vertices #No. of vertices self.graph = [] # default dictionary to store graph # function to add an edge to graph def addEdge(self,u,v,w): self.graph.append([u,v,w]) # A utility function to find set of an element i # (uses path compression technique) def find(self, parent, i): if parent[i] == i: return i return self.find(parent, parent[i]) . . . g = Graph(4) g.addEdge(0, 1, 10) g.addEdge(0, 2, 6) g.addEdge(0, 3, 5) g.addEdge(1, 3, 15) g.addEdge(2, 3, 4) g.boruvkaMST()
خروجی حاصل از اجرای این الگوریتم نیز بصورت زیر است:
Edge 0-3 included in MST Edge 0-1 included in MST Edge 2-3 included in MST Weight of MST is 19
این اثر تحت عنوان سورس کد تعیین درخت پوشای کمینه با الگوریتم سولین sollin در پایتون Python در نرم افزار Python نوشته شده است. این برنامه مناسب برای دانشجویان و علاقه مندان به درس ساختمان داده و طراحی الگوریتم میباشد چرا که دارای کدهای روان و قابل فهم و آسان برای یادگیری میباشد. خرید اثر توسط کلیه کارتهای شتاب امکان پذیر است و بلافاصله پس از خرید، لینک دانلود اثر در اختیار شما قرار خواهد گرفت. کیفیت فایل توسط کارشناسان پی استور تضمین میشود.
تیم برنامه نویسی پی استور یکی از اولین گروههای تشکیل شده در مجموعه آموزشی پی استور میباشد. این تیم از اساتید مجرب و فارغ التحصیلان رشتههای فنی و مهندسی تشکیل شده که در زمینههای مختلف برنامهنویسی و تهیه سورس کد فعال هستند.
نام اثر: | الگوریتم sollin در پایتون (حل درخت پوشای کمینه با الگوریتم سولین) |
نوع اثر: | سورس کد |
برنامهنویس: | تیم برنامهنویسی پیاستور |
زبان برنامه نویسی: | پایتون Python |
ویژگی: | قابلیت دانلود و ویرایش |
توجه: کیفیت این محصول توسط پی استور تضمین شده و در صورت عدم رضایت از محصول، به انتخاب شما:
هزینه سفارش:
۹۹,۰۰۰ تومان
نظرات
آرمان
سلام. حتما باید با نرم افزار اسپایدر اجرا بشه؟
فاطمه اسماعیلی
سلام. خیر با خود IDE پایتون و همینطور VS Code هم قابل اجرا هست.
مهمان
خوب بود