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