الگوریتم مجموعه‌ای محدود و مرتب از گام‌ها یا دستورالعمل‌هاست که برای حل یک مسئله یا انجام یک وظیفه مشخص طراحی می‌شود. الگوریتم می‌تواند در قالب کد، شبه‌کد یا توضیح مرحله‌به‌مرحله بیان شود.

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

در عمل چه اتفاقی می‌افتد؟

مثال ساده الگوریتم این است که برای پیدا کردن بزرگ‌ترین عدد یک آرایه، از عنصر اول شروع کنیم، عناصر بعدی را یکی‌یکی مقایسه کنیم و هر بار مقدار بزرگ‌تر را نگه داریم. این روش برای n عنصر، زمان O(n) نیاز دارد.

نمونه کوتاه

def largest(values):
    result = values[0]
    for value in values[1:]:
        if value > result:
            result = value
    return result