Un algoritm poate fi descris printr-o secvență de pași sau instrucțiuni care trebuie urmate pentru a atinge un anumit obiectiv sau a rezolva o problemă specifică. Această descriere poate fi în limbaj natural sau într-un limbaj de programare. În plus, un algoritm poate fi descris prin eficiența sa, timpul necesar pentru a executa sarcina dată și cantitatea de memorie folosită în acest proces.