logo search
Информатика ответы

21.Структура данных. Классификация структур данных.

Структура данных (англ.data structure) — программная единица, позволяющая хранить и обрабатывать множество однотипных и/или логически связанных данныхввычислительной технике. Для добавления, поиска, изменения и удаления данных структура данных предоставляет некоторый набор функций, составляющих её интерфейс.

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

Некоторые структуры:

Классификация структур данных м.б. выполнена  по различным признаками.

1) По сложности: простые и интегрированные. Простые (базовые, примитивные) структуры - это такие, которые не могут быть распределены на составные части.  Структурированные(интегрированные, композитные, сложные) - такие структуры данных, составными частями которых есть другие структуры данных - простые ли, в свою очередь, интегрированные. Интегрированные структуры данных конструируются программистом.

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

3). По наличию связей между элементами данных: несвязные и связные. Несвязные структуры характеризуются отсутствием связей между элементами структуры. Связные структуры характеризуются наличием связи. Примерами несвязных структур есть векторы, массивы, строки, стеки, очереди; примеры связных структур - связные списки.

4).  По изменчивости: статические, полустатические, динамические. Изменчивость, то есть изменение числа элементов и (ли) связей между элементами структуры.  Статические - к этой группе относят массивы, множества, записи, таблицы.  Полустатические - это стеки, очереди, деки, дерева. Динамические - линейные и разветвленные связные списки, графы, дерева.

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

6). По виду памяти, используемой для сохранности данных: структуры данных для оперативной  и для внешней памяти. Структуры данных для оперативной памяти - это данные, размещенные в статической и динамической памяти компьютера. Все вышеприведенные структуры данных - это структуры для оперативной памяти.   Структуры данных для внешней памяти называют файловыми    структурами или файлами. Примерами файловых структур есть последовательные файлы, файлы, организованные разделами, В- деревья.