Algorytm to skończony zbiór jasno zdefiniowanych czynności koniecznych do wykonania pewnego zdania. Ma on przeprowadzić system z pewnego stanu początkowego do pożądanego stanu końcowego. Algorytm może zostać zaimplementowany w postaci programu komputerowego. Jeżeli zostanie to zrobione niepoprawnie, to mówi się że komputer ma buga (ang. robak).

Algorytm często porównuje się do przepisu kulinarnego. Dla przykładu, aby zrobić bigos należy w określonej kolejności oraz odstępach czasowym (imperatyw czasowy) oddawać właściwe rodzaje kapusty i innych składników. Może istnieć kilka przepisów dających na końcu bardzo podobny bigos.

Główna różnica między algorytmem kulinarnym i komputerowym tkwi w zdolności jego wykonawcy do zrozumienia języka przepisu. Kucharz jest dużo bardziej inteligentny od komputera. Wiele algorytmów jasnych dla człowieka, staje się niezrozumiałe dla maszyny.

W niektórych krajach, jak USA, algorytmy mogą zostać opatentowane, jeżeli dają się zaimplementować w jakimś praktycznym celu. Opatentowanie algorytmów spowalnia rozwój informatyki, bo jeden producent może uzyskać monopol, np. na pisanie oprogramowania tworzącego pewne typy plików (np. GIF). Wiele koncernów komputerowych prowadzi między sobą prawnicze spory dotyczące własności do niektórych patentów.