Представление и эффективность алгоритмов
Написано: автор Dmitry Volk
0
Представления алгоритмов
Формы записи алгоритма:
- словесная или вербальная (языковая, формульно-словесная);
- псевдокод (формальные алгоритмические языки);
- схематическая:
- графическая (блок-схемы и ДРАКОН-схемы);
- структурограммы (диаграммы Насси-Шнейдермана).
Обычно сначала (на уровне идеи) алгоритм описывается словами, но по мере приближения к реализации он обретает всё более формальные очертания и формулировку на языке, понятном исполнителю (например, машинный код).
Эффективность алгоритмов
Хотя в определении алгоритма требуется лишь конечность числа шагов, требуемых для достижения результата, на практике выполнение даже хотя бы миллиарда шагов является слишком медленным. Также обычно есть другие ограничения (на размер программы, на допустимые действия). В связи с этим вводят такие понятия, как сложность алгоритма (временна́я, по размеру программы, вычислительная и др.).
Для каждой задачи может существовать множество алгоритмов, приводящих к цели. Увеличение эффективности алгоритмов составляет одну из задач современной информатики. В 50-х гг. XX века появилась даже отдельная её область — быстрые алгоритмы. В частности, в известной всем с детства задаче об умножении десятичных чисел обнаружился ряд алгоритмов, позволяющих существенно (в асимптотическом смысле) ускорить нахождение произведения. См. быстрое умножение
Ярким примером является алгоритм Чудновского для вычисления числа .
В следующий раз поговорим о псевдокоде(кликабельно).
В следующий раз поговорим о псевдокоде(кликабельно).