Основные алгоритмические конструкции.

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

Иными словами, все алгоритмы можно разделить на три основные алгоритмические конструкции:

1) Линейные алгоритмы — алгоритм, в котором все этапы решения задач выполняются строго последовательно (Рис 4.1).

2) Разветвляющиеся алгоритмы. Алгоритм, в котором выбирается один из нескольких возможных вариантов вычислительного процесса, называется разветвляющимся (Рис 4.2).

3) Циклические алгоритмы — это алгоритмы, в которых одна или несколько команд выполняются многократно (Рис 4.3).

Основные алгоритмические конструкции. - student2.ru

Основные алгоритмические конструкции. - student2.ru

Основные алгоритмические конструкции. - student2.ru Основные алгоритмические конструкции. - student2.ru

Алгоритм любой сложности можно составить используя комбинацию из этих трех основных конструкций. Составив блок-схему алгоритма, его можно закодировать на каком либо языке программирования.

Основные структуры данных

Работа с большими наборами данных автоматизируется проще, когда данные упорядочены, то есть образуют заданную структуру. Существует три основных типа структур данных: линейная, иерархическая и табличная. Их можно рассмотреть на примере обычной книги.

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

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

Для быстрого поиска данных существует иерархическая структура. Так, например, книги разбивают на части, разделы, главы, параграфы и т. п. Элементы структуры более низкого уровня входят в элементы структуры более высокого уровня: разделы состоят из глав, главы из параграфов и т. д.

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



Наши рекомендации