Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
as.doc
Скачиваний:
37
Добавлен:
24.04.2019
Размер:
2.25 Mб
Скачать

2.4. Структури даних у пам’яті комп’ютера

2.4.1. Структури даних в оперативній пам’яті

В оперативній пам’яті структури даних можна подати як на рис. 2.4.

Рис. 2.4. Подання СД в оперативній пам’яті

Слід зазначити, що оперативна пам’ять є масивом. Слово – мінімальна кількість біт, яка може опрацьовуватися одночасно.

2.4.2. Сд у зовнішній пам’яті

На рис 2.5. подано структури даних у зовнішній пам’яті.

Рис. 2.5. Подання СД у зовнішній пам’яті.

СД послідовного доступу передбачає опрацювання даних у порядку їх розміщення на носії. Така СД є простою для реалізації, але унеможливлює безпосередній доступ до заданого елемента. Приклад структури даних послідовного доступу: стек, черга, дек.

На мові Сі для послідовного зчитування з файла можна скористатися таким фраґментом програми:

f=fopen(“my.txt”, “rt”);//відкрили послідовно для читання

for(i=0;i<k;i++)

{читаємо k елементів без перевірки правильності зчитування}

fscanf(f, “%d”,&x);

СД прямого доступу дозволяє опрацьовувати елементи у необхідному для користувача порядку шляхом зміщення певної кількості бітів. Переваги: швидкість, простота. Недоліки: відірваність процедур доступу від самих даних.

Прикладом прямого доступу є запис у файл fd змінної типу long, починаючи з 20-ої позиції:

#define SEEK_SET 0 // позиція на початку файла

long a=0 x1256;

fseek (fd, 20L, SEEK_SET);

fwrite (&a, sizeof(long),1,fd);

Індексно-послідовна модель передбачає, що для кожного опрацьованого елемента даних вводиться ідентифікатор даних – ключ. Звертання до елементів даних здійснюється через значення ключа. Прикладом такого ключа є номер елемента масиву.

Резюме

  1. Структура даних – загальна властивість інформаційного об’єкту, з яким взаємодіє та чи інша програма. Ця загальна властивість характеризується: множиною допустимих значень цієї структури; набором допустимих операцій; характером організованості.

2. Рівні описування даних: абстрактний, логічний, фізичний.

3. Структури даних поділяються на вбудовані (реалізовані в мовах програмування) та похідні (утворюються користувачами).

4. Складеним типом даних назвемо тип даних, що складається із скінченної та наперед заданої множини елементів певного типу, які не обов’язково є атомарними. Перерахуємо складені типи даних: множина, послідовність, матриця, дерево, граф, гіперграф.

5. В зовнішній пам’яті структури даних можна подати таким чином: фізичний блок або схема зберігання. Схема зберігання формується через структури даних прямого доступу, послідовного доступу, індексно-послідовного доступу.

Контрольні запитання

1. Поняття структури даних. Рівні подання структур даних.

2. Рівні описування даних.

3. Основні види (типи) структур даних.

4. Класифікація структур даних у програмах користувача й у пам’яті комп’ютера.

5. Приклади структур даних.

6. Структури даних в оперативній пам’яті.

7. Структури даних у зовнішній пам’яті.

8. Порівняти різні схеми зберігання даних.

9. Навести приклади прямого доступу до даних.

Розділ 3.

Структурні та лінійні типи даних

  • Поняття структури даних типу «масив».

  • Набір допустимих операцій для СД типу «масив».

  • Дескриптор СД типу «масив».

  • Ефективність масивів.

  • Зберігання багатовимірних масивів.

  • Структура даних типу «множина».

  • СД типу «запис».

  • СД типу «таблиця».

  • СД типу «стек».

  • СД типу «черга».

  • СД типу «дек».

У розділі описано одну з найпростіших та водночас найпоширеніших структур даних – масив. Описано операції, що можуть виконуватися над масивом. Показано способи подання масивів. Також здійснено опис структури даних типу «запис» і показано, що записи найчастіше подаються за допомогою масивів. Подано характеристики динамічних структур даних типу «стек», «черга», «дек» та показано відмінності між ними. Показано відображення стека та черги на масив та на список.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]