-
تکنیکهای طراحی الگوریتم - مقدمه
برای شروع تصمیم گرفتم که مطلبی را در رابطه با تکنیکهای طراحی الگوریتم بنویسم (در حقیقت ترجمهای ساده شده که تا حد امکانِ مطالب ریاضی آن حذف شده است). اگر مورد پسند واقع شد که ادامه میدهیم وگرنه موضوع دیگهای رو شروع میکنیم. در ضمن اگر در بکارگیری معادلهای فارسی ناشیگری یا اشتباهی دیدید لطفا گوشزد کنید.
------------------------------------------------------------------------------------------
الگوهای الگوریتمی (Algorithmic Paradigms) عبارتند از راه حلهایی جامع برای حل کارآمد مسائل.
این راه حلها بدلایل زیر مورد توجه هستند:
- قالبهای مناسبی برای حل گسترهای از مسائل گوناگون فراهم میکنند.
- به راحتی میتوانند به ساختارهای فراهم شده توسط زبانهای سطح بالا (High-Level Languages) ترجمه شوند.
- کلیه اجزای الگوریتمهایی که از این الگوها حاصل میشوند با ریزبینی میتوانند مورد تجزیه و تحلیل قرار گیرند.
در ادامه این بحث الگوهای الگوریتمی زیر را مورد بررسی قرار میدهیم:
- تقسیم و تسخیر (Divide and Conquer)
- برنامهنویسی پویا (Dynamic Programming)
- روش سیری ناپذیر! (Greedy Method)
- بازگشت به عقب (Backtracking)
هرچند ممکن است بیشتر از یک تکنیک برای یک مسئله خاص جوابگو باشد، اما در اغلب موارد الگوریتم ساخته شده با یک الگو بطور روشنی از الگوریتمی معادل که با الگویی دیگر ساخته شده است، برتری دارد.
انتخاب یک الگوی الگوریتمی مناسب، جنبهای مهم در تعیین ساختار و ترکیب الگوریتم است.
Y@SiN
فعلا امضا نداريم.باشگاه داريم
برچسب برای این موضوع
مجوز های ارسال و ویرایش
- شما نمی توانید موضوع جدید ارسال کنید
- شما نمی توانید به پست ها پاسخ دهید
- شما strong>نمی توانید فایل پیوست ضمیمه کنید
- شما نمی توانید پست های خود را ویرایش کنید
-
قوانین انجمن