الگوریتمستان

برنامه‌نویسی، طراحی الگوریتم و حل مسئله‌های الگوریتمی

 
در صورت ناخوانا بودن نوشته‌ها، از مرورگر دیگری استفاده کنید.
نوشته‌ها با برچسب الگوریتم‌های تقسیم و غلبه نوشته‌ها با برچسب الگوریتم‌های تقسیم و غلبه - الگوریتمستان الگوریتمستان الگوریتمستان
نوشته‌ها با برچسب «

الگوریتم‌های تقسیم و غلبه

»

مسئله‌ی ضرب زنجیره‌ای ماتریس‌ها و پرانتزبندی بهینه‌ی آن یکی از مثال‌های مشهور کاربرد برنامه‌نویسی پویا در حل مسائل بهینه‌سازی است.

فرض کنید قصد داریم حاصلضرب عبارت ماتریسی $ A_{3 \times 7} \times B_{7 \times 8 } \times C_{8 \times 4} $ را محاسبه کنیم. می‌دانیم که ضرب ماتریس‌ها خاصیت شرکت‌پذیری داشته، اما خاصیت جابجایی ندارد. بنابراین رعایت ترتیب ضرب آنها مهم است. پرانتزبندی‌های مختلف ضرب ماتریس‌ها حالت‌های مختلف محاسبه آن را به ما می‌دهند:

  

\[1: A \times (B \times C) \]

ادامه ...

یکی از روش‌های پرکاربرد و محبوب برای طراحی الگوریتم‌ها روش Divide and Conquer است که در زبان فارسی به صورت تقسیم و حل یا تقسیم و غلبه ترجمه شده است.

در این روش، داده‌ها به دو یا چند دسته تقسیم شده و حل می‌شوند. سپس با ترکیب مناسب نتایج به دست آمده از این زیرمسئله‌ها، مسئله‌ی اصلی حل می‌شود. در صورتی که زیرمسئله خود به اندازه‌ی کافی بزرگ باشد، می‌توان از همین روش برای حل آن استفاده کرد. تقسیمات متوالی زیرمسئله‌ها تا جایی ادامه پیدا می‌کند که به اندازه‌ی کافی کوچک شده باشند و بتوان آنها را با روش‌های دیگر به راحتی حل نمود.

برای آشنایی بیشتر، چند الگوریتم که با روش حل و تقسیم پیاده‌سازی شده‌اند معرفی می‌شوند.

ادامه ...

الگوریتمستان در تلگرام

   

 

پیوند کوتاه:
برو به صفحه‌ی:  1  2
برچسب‌ها
#درخت پوشا #برنامه‌نویسی #ترجمه‌ی فارسی سوالات برنامه‌نویسی #آمادگی المپیاد کامپیوتر #حل سوالات UVa Online Judge #دانلود کتاب #سوالات مسابقات ACM-ICPC #آموزش الگوریتم #الگوریتم‌های برنامه‌نویسی پویا #جستجوی اول سطح #نکات برنامه‌نویسی #نمونه سوال فارسی مسابقه‌ی ACM #جستجوی اول عمق #آمادگی مسابقه ACM #ویدئوی آموزشی #درخت‌ها #نمونه سوال فارسی مسابقات ACM #مسابقه برنامه‌نویسی #برنامه‌نویسی ++C #ترجمه‌ی فارسی سوالات ACM #ساختمان داده #تمرین المپیاد کامپیوتر #تمرین طراحی الگوریتم #تمرین مسابقه‌ی برنامه‌نویسی ای‌سی‌ام #ترجمه فارسی سوالات کتاب Programming Challenges #سوالات چالشی برنامه‌نویسی #مسأله‌های برنامه‌نویسی #سوالات UVa Online Judge #سوالات مسابقات برنامه‌نویسی بیان #تمرین مسابقه برنامه‌نویسی #آمادگی مسابقه برنامه‌نویسی #گراف #حل سوالات Timus Online Judge #مسابقات برنامه‌نویسی #کتاب الکترونیکی #ماتریس #الگوریتم‌های مرتب‌سازی #کتابخانه قالب استاندارد ++C #الگوریتم‌های مسیریابی #مسابقه برنامه نویسی #الگوریتم‌های حریصانه #کتاب الگوریتم #آموزش طراحی الگوریتم #وبلاگ #کتاب مسابقات برنامه‌نویسی #الگوریتم دایکسترا #منبع آموزشی #الگوریتم #الگوریتم‌های کوتاهترین مسیر #Python #حل مسئله‌‌ی الگوریتمی #نمونه سوال فارسی مسابقات برنامه‌نویسی #الگوریتم فلوید-وارشال #الگوریتم‌های گراف #آموزش ساختمان داده‌ها #سوالات برنامه‌نویسی #محاسبات ریاضی #معرفی وب‌سایت #ترجمه‌ی فارسی سوالات UVa Online Judge #نمونه سوالات مسابقه برنامه‌نویسی #الگوریتم‌های تقسیم و غلبه #پیمایش گراف #مسئله‌های برنامه‌نویسی #مسئله‌ی کوله‌پشتی #صف #آموزش برنامه‌نویسی ++C #حل سوالات مسابقات برنامه‌نویسی #مسأله‌های الگوریتمی #تکنیک‌های طراحی الگوریتم #نمونه سوال مسابقه ACM #حل سوالات ACM-ICPC #الگوریتم‌های عقبگرد #الگوریتم‌های بازگشتی #مسئله‌های الگوریتمی #مسابقات برنامه‌نویسی ACM