طراحی الگوریتم دانش ساخت الگوریتم برای حل مسئلهاست. طراحی الگوریتم کاربردی را الگوریتم مینامند. طراحی الگوریتم در بسیاری از راه حلهای تئوری تحقیق در عملیات، شناسایی و گنجانیده شدهاست، مانند برنامهنویسی تقسیم و غلبه. الگوهای طراحی الگوریتم تکنیکهای طراحی و اجرای طرحهای الگوریتم هستند، در این روزها از طراحی الگوریتم میتوان در فرایندهای بازیابی اینترنتی، مسیریابی استفاده نمود.
هم اکنون در ایران طراحی الگوریتمها به عنوان درسی در رشته مهندسی کامپیوتر و فناوری اطلاعات تدریس میشود. در طراحی الگوریتمها مباحثی همچون پیچیدگی زمانی، بازگشتی، روش تقسیم و غلبه، روش حریصانه، روش برنامهسازی پویا، عقبگرد، نظریه P و NP تدریس میشود. زبانهای برنامهنویسی رایانههای بزرگ مانند زبان ALGOL (برای زبان الگوریتمی)، زبان COBOL، زبان PL/I، زبان SAIL و SN OBOL ابزار محاسبات برای به اجرا درآوردن یک طراحی الگوریتم است اما یک طراحی الگوریتم (a/d) یک زبان نیست، یک a/d میتواند یک روش دست نوشته باشد، بهطور مثال مجموعهای از معادلات. یک سری از فرایندهای مکانیکی انجام شده توسط دست، قطعه آنالوگ از تجهیزات یا فرایند دیجیتال و پردازندهاست. یکی از مهمترین جنبههای طراحی الگوریتم، ایجاد یک الگوریتم است که دارای یک زمان اجرای کارآمد باشد، که به عنوان او بزرگ شناخته شدهاست.