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

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

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

آموزش الگوریتم

»

یکی از روش‌های پرکاربرد و مشهور طراحی الگوریتم روش برنامه‌نویسی پویا (یا برنامه‌ریزی پویا، برنامه‌سازی پویا - Dynamic Programming) است. این روش همچون روش تقسیم و حل (Divide and Conquer) بر پایه‌ی تقسیم مسئله بر زیرمسئله‌ها کار می‌کند. اما تفاوت‌های چشم‌گیری با آن دارد.

زمانی که یک مسئله به دو یا چند زیرمسئله تقسیم می‌شود، دو حالت ممکن است پیش بیاید:

1- داده‌های زیرمسئله‌ها هیچ اشتراکی با هم نداشته و کاملا مستقل از هم هستند. نمونه‌ی چنین مواردی مرتب‌سازی آرایه‌ها با روش ادغام یا روش سریع است که داده‌ها به دو قسمت تقسیم شده و به صورت مجزا مرتب می‌شوند. در این حالت داده‌های یکی از بخش‌ها هیچ ارتباطی با داده‌های بخش دیگر نداشته و در نتیجه حاصل از آن بخش اثری ندارند. معمولا روش تقسیم و حل برای چنین مسائلی کارآیی خوبی دارد.

ادامه ...

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

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

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

ادامه ...

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

   

 

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