71
зволяет организовать «потоковые» операции: однородность позволяет
рассматривать пересылаемые данные как непрерывный поток. Поток не
может быть прерван по контекстно определяемому условию, например,
при пересылке текста - по значению кода «перевод строки», и это не за-
ставляет программу анализировать значение каждого очередного эле-
мента. И, кроме того, последовательный доступ – это простота управле-
ния памятью и устройством ввода-вывода.
Таблица – это последовательности, обычно представляемые стро-
ками - совокупностями разнотипных элементов. Или, иначе, таблица -
это множество записей, каждая из которых представляет набор поиме-
нованных полей.
Однако с точки зрения размещения элементов таблица может быть
представлена как одномерный массив (или, в случае БД -
последовательность) с однородными композиционными элементами,
каждый из которых представляет собой совокупность разнотипных
элементов. Именно это позволяет свести ввод/вывод таких типов
структур к последовательным элементарным операциям.
Кроме того, разнотипность элементов позволяет ввести отличную
от перечислительной схему идентификации записей, определив одно из
полей как ключ записи. Обычно ключ содержит значение, используемое
в процедурах упорядочения и поиска записей.
3.5.2. Нелинейные структуры
В качестве примеров нелинейных структур рассмотрим списки,
деревья и сети.
Порядок следования (и, соответственно, выборки) элементов таких
структур может не соответствовать порядку расположения элементов в
памяти. Списки представляют собой пример линейного упорядочения,
деревья – двумерного, сети – произвольного. Соответственно различа-
ются методы и средства, обеспечивающие последовательность выборки
элементов данных. Обычно для обеспечения возможности прямого дос-
тупа к произвольному элементу необходимо использовать вспомога-
тельные структуры типа инвертированных списков.
Список также, как и массив, представляет собой совокупность од-
нотипных элементов. Однако порядок выборки элементов может отли-
чаться от порядка следования в памяти, определенного при размещении.
Наиболее очевидный способ установления однонаправленного порядка
выборки элементов – это сопоставить каждому элементу списка ссылку,
указывающую на следующий элемент. Соответственно, для организации
двунаправленного списка, допускающего также выборку в обратном по-
рядке, каждый элемент должен иметь ссылку на предыдущий. Такая ор-
ганизация уже не допускает возможности прямого доступа, например,
по номеру элемента.