Слово "алгоритм" является производным от имени среднеазиатского ученого ал-Хорезми, уроженца Хивы, жившего в IX веке нашей эры. На основании его трудов в средние века были сформулированы основные правила арифметики. Первоначально слово «алгоритм» использовалось для обозначения алгоритмов цифровых вычислений десятичной позиционной арифметики, а затем для обозначения произвольных процессов, в которых искомые величины решаемых задач находятся последовательно из исходных данных по определенным правилам и инструкциям.
Неточное (интуитивное) определение алгоритма следующее:
Алгоритм - заранее определенное, точное предписание, которое задает дискретный (пошаговый) процесс, начинающийся определенным образом и приводящий к результату за конечное число шагов.
Исполнитель алгоритма – это субъект или устройство способные правильно интерпретировать описание алгоритма и выполнить содержащийся в нем перечень действий.
Исполнителем алгоритма является компьютер. Но по мере развития программного обеспечения можно считать, что компьютер предоставляет пользователю множество исполнителей, из которых следует выбрать оптимальный, т.е. наиболее соответствующий задаче и алгоритму.
Свойства алгоритма:
1. Детерминированность (определенность) - каждое действие должно быть понятно исполнителю (для каждого алгоритма предполагается конкретный исполнитель) и содержать операции над известными данными;
2. Дискретность - каждый алгоритм должен быть разбит на конечное число законченных действий;
3. Результативность - каждый алгоритм направлен на решение конкретной задачи, а следовательно на получение определенного результата;
4. Массовость - алгоритм необходимо составить так, чтобы с его помощью можно было решать класс подобных задач.