Теми рефератів
> Реферати > Курсові роботи > Звіти з практики > Курсові проекти > Питання та відповіді > Ессе > Доклади > Учбові матеріали > Контрольні роботи > Методички > Лекції > Твори > Підручники > Статті Контакти
Реферати, твори, дипломи, практика » Курсовые обзорные » Робота зі структурою двійкового файлу

Реферат Робота зі структурою двійкового файлу





9;єкта але у неї є непусті "нащадки". Вставка в цю вершину відбудеться тільки якщо значення об'єкта знаходиться в проміжку значень об'єктів вершини, інакше вставка буде проведена або в ліве, або в праве піддерево. br/>

2.5 Алгоритм стиснення файлу


Частково алгоритм стиснення схожий на алгоритм видалення проміжної вершини, описаний в попередньому пункті. Важливою особливість алгоритму є те, що одночасно із стисненням відбувається і балансування дерева. Коротко алгоритм можна описати так:

) Збір інформації про дерево (кількість об'єктів)

2) Оголошення масиву в оперативній пам'яті розміром з кількість об'єктів у дереві

) Збір об'єктів з дерева в масив

) Створення на основі масиву нового дерева у файлі

Таким чином, видно, що з файлу витягується тільки корисна інформація, а весь "сміття" видаляється при пересоздании файлу.


В 

Малюнок 9. Стиснення файлу та балансування дерева


3. Функціональне опис розробки


Допоміжні методи

Шаблон клас бінарногодерева успадковується від класу двонаправленого введення/виводу у файл fstream. Спадкування публічне. p align="justify"> template BinaryTree: public fstream;

Параметр шаблону class T і є тип об'єкта, що зберігається в дереві.

Для полегшення роботи з файловими покажчиками і максимального наближення стилю роботи до звичайних вказівниками були введені методи, позбавляють програміста від багаторазового використання методів позиціонування в файлі і читання/запису до/з файл (а).

Метод: ulong filemalloc (M val);

Виділення пам'яті у файлі і запис в неї об'єкта типу M. Метод записує об'єкт в кінець файлу, тому ймовірність затерти інші дані виключена. Повертається файловий покажчик на об'єкт. Використовується при додаванні об'єкта в масив покажчиків. p align="justify"> Метод: voidreadvar (ulongp, R & rez);

Читання даних розміром sizeof (R) в об'єкт типу R з файлу за вказівником p.

Метод: void writevar (ulong p, R & var);

Запис даних розміром sizeof (R) у файл за вказівником p.

У роботі використовуються тільки ці функції при роботі з файлом, за винятком тих випадків, коли потрібно записати масив.

Поля класу

ulong root;// покажчик на кореневу вершину у файлі * name;// ім'я поточного файлу

Для визначення стану о...


Назад | сторінка 3 з 15 | Наступна сторінка





Схожі реферати:

  • Реферат на тему: Клас двійкового файлу, похідний від fstream
  • Реферат на тему: Створення меню без файлу опису ресурсів на основі функції LoadMenuIndirect ...
  • Реферат на тему: Обробка набору даних, представленого у вигляді файлу
  • Реферат на тему: Практична обробка набору даних, представленого у вигляді файлу
  • Реферат на тему: Створення текстового файлу. Довідково-пошукова система