Лекция: Формальные свойства алгоритмов

Различные определения алгоритма в явной или неявной форме содержат следующий ряд общих требований:

· Дискретность — алгоритм должен представлять процесс решения задачи как последовательное выполнение некоторых простых шагов. При этом для выполнения каждого шага алгоритма требуется конечный отрезок времени, то есть преобразование исходных данных в результат осуществляется во времени дискретно.

· Детерминированность (определённость). В каждый момент времени следующий шаг работы однозначно определяется состоянием системы. Таким образом, алгоритм выдаёт один и тот же результат (ответ) для одних и тех же исходных данных. В современной трактовке у разных реализаций одного и того же алгоритма должен быть изоморфный граф. С другой стороны, существуют вероятностные алгоритмы, в которых следующий шаг работы зависит от текущего состояния системы и генерируемого случайного числа. Однако при включении метода генерации случайных чисел в список «исходных данных», вероятностный алгоритм становится подвидом обычного.

· Понятность — алгоритм должен включать только те команды, которые доступны исполнителю и входят в его систему команд.

· Завершаемость (конечность) — при корректно заданных исходных данных алгоритм должен завершать работу и выдавать результат за конечное число шагов.[источник не указан 857 дней] С другой стороны, вероятностный алгоритм может и никогда не выдать результат, но вероятность этого равна 0.

· Массовость (универсальность). Алгоритм должен быть применим к разным наборам исходных данных.

· Результативность — завершение алгоритма определёнными результатами.

· Алгоритм содержит ошибки, если приводит к получению неправильных результатов либо не даёт результатов вовсе.

· Алгоритм не содержит ошибок, если он даёт правильные результаты для любых допустимых исходных данных.

еще рефераты
Еще работы по информатике