Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл: Источник:
Скачиваний:
289
Добавлен:
04.03.2014
Размер:
136.19 Кб
Скачать

3.3.3. Основные структуры данных и их представления.

Структура данных - это группа из одного или более элементов данных,

которые структурно связаны между собой. Если некоторые данные в структу-

ре сами являются структурами данных, то образуется многоуровневая иерар-

хическая структура данных. Существует большое разнообразие структур дан-

ных, среди которых можно выделить три основных:

- списки, структурные свойства которых ограничены лишь относитель-

ным расположением элементов;

- деревья, образующие иерархические структуры, в которых каждый

подчиненный элемент имеет только один предшествующий элемент;

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

элементами типа "исходный-порожденный". В графе любой элемент может быть

связан с любым другим элементом.

Разработка структур данных осуществляется в два этапа. На первом

этапе, называемом логическим (или концептуальным), определяется упрощен-

ная логическая структура данных. На втором этапе, называемом физическим

(или реализационным), определяется отображение логической структуры дан-

ных в памяти ЭВМ для ее последующей обработки прикладными программами.

Пример организации линейного двунаправленного связанного списка:

На рисунке приведено условное изображение списка.

+--------+ +--------+ +--------+

| | | | | |

+--------+ +--------+ +--------+

| nil |<--------* |<---- ... <--------* |

+--------+ +--------+ +--------+

| *--------->| *---------> ... ---->| nil |

+--------+ +--------+ +--------+

Каждый элемент двунаправленного списка содержит указатель на следу-

ющий элемент этого списка и на предыдущий элемент этого списка. Указа-

тель на следующий элемент в последнем элементе содержит nil. Указатель

на предыдущий элемент в первом элементе содержит nil.

Необходимые объявления для организации такого списка на языке Turbo

Pascal будут иметь вид:

type ElemPtr = ^Elem;

Elem = record

...

Prev: ElemPtr;

Next: ElemPtr;

end; -

3.4. Отладка и тестирование программ.

Испытания любой программной системы всегда представляют собой один

из наиболее ответственных этапов ее разработки и часто бывают связвны с

наибольшими трудностями и наибольшими потерями времени. Отладка и тести-

рование - это два четко различимых и непохожих друг на друга этапа. В

первом случае происходит устранение синтаксических ошибок и явных ошибок

кодирования. Во втором случае имеют дело с программой, не содержащей от-

меченных ошибок, которая выдает какие-то правильные результаты. Основная

цель выделения отладки и тестирования как отдельных этапов создания

программы заключается в том, чтобы обратить внимание на обязательность

обеих стадий и на необходимость специального планирования временных зат-

рат по каждой из них в отдельности.

Соседние файлы в папке 13_3xN