Виды алгоритмических (вычислительных) процессов

 

Реализация алгоритма называется алгоритмическим процес­сом (вычислительным процессом).

Все алгоритмические процессы обработки данных делятсяна линейный, разветвляющийся и циклический.

Линейный процесс это вычислительный процесс, в котором действия выполняются последовательно, т.е. в порядке их записи. (Линейный процесс не содержит логических условий.)

Разветвляющийся процесс это процесс, в котором порядок выполнения действий зависит от исходных условий или промежу­точных результатов.

Каждое направление вычислений в таком процессе называется ветвью вычислений. Проверка выполнения логического условия определяет ветвь вычисления. Вычислительный процесс выполня­ется только по одной ветви. Количество условий определяет коли­чество точек ветвления.

Циклический процесс– это процесс, в котором группа команд многократно повторяется до тех пор, пока выполняется заданное

условие.

Последовательность команд, которая повторяется пока выполня­ется заданное условие, называется циклом. Циклический процесс сокращает длину записи алгоритма, так как не надо повторять за­пись одних и тех же команд несколько раз.

Например, алгоритм вычисления Х = А20 можно записать как АА, A'-A,..., А^А, тогда вычислительный процесс будет линейным. Алгоритм можно записать короче, для этого надо оформить цикл и контролировать его окончание.

 


Критерии качества алгоритмов

 

Основными критериями качества алгоритмов признаются следующие:

1. Связность алгоритма - определяется количеством промежуточных результатов, которые должны одновременно храниться в памяти исполнителя. Естественно, что алгоритм тем лучше, чем меньше его связность, т.к. при этом уменьшается количество ячеек, занятых в оперативной памяти.

2. Объем алгоритма - количество операций (шагов), которые необходимо выполнить для получения конечного результата.

Естественно, что чем меньше трудоемкость, Т.е. чем меньше операций нужно предусмотреть составителю алгоритма, а значит, меньше времени затратить на его написание и исполнение, тем выше качество алгоритма.

Уменьшение количества шагов экономит не только время составителя алгоритма, но и время исполнителя, сокращает длительность решения задачи.

3. Длительность решения определяется количеством шагов алгоритма, а также сложностью этих шагов. Если все операции достаточно просты и наглядны, длительность решения сокращается, и наоборот. Конечно, время выполнения любой операции определяется прежде всего быстродействием самого исполнителя, но для одной и той же операции время выполнения условно можно считать равным некоторой константе. Тогда алгоритм тем лучше, чем быстрее он выполняется.

4. Разветвленность алгоритма характеризует логическую сложность и определяется количеством путей, по которым может реализоваться процесс вычислений. Значительная разветвленность увеличивает сложность алгоритма, а значит, и трудоемкость его разработки и исполнения.

5. Цикличность алгоритма заключается в том, что фактическое количество операций, которые должны быть выполнены в ходе процесса реализации, превышает количество операций, содержащихся в записи алгоритма. Происходит это благодаря тому, что те или иные группы операций могут повторяться многократно (циклически) и поэтому их можно не включать каждый раз в алгоритм. Цикличность повышает качество алгоритма из-за сокращения числа шагов.

 


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: