Работа со структурой двоичного файла
2.5 Алгоритм сжатия файла
Частично алгоритм сжатия похож на алгоритм удаления промежуточной вершины, описанный в предыдущем пункте. Важной особенность алгоритма является то, что одновременно со сжатием происходит и балансировка дерева. Кратко алгоритм можно описать так:
1) Сбор информации о дереве (количество объектов)
2) Объявление массива в оперативной памяти размером с количество объектов в дереве
3) Сбор объектов из дерева в массив
4) Создание на основе массива нового дерева в файле
Таким образом, видно, что из файла извлекается только полезная информация, а весь "мусор" удаляется при пересоздании файла.
Рисунок 9. Сжатие файла и балансировка дерева
Содержание
- 1. Задание
- 2. Структурное описание разработки
- 2.1 Описание структуры данных
- 2.2 Структура двоичного файла. Представление двоичного дерева в файле
- 2.3 Вставка объекта в дерево
- 2.4 Удаление объекта
- 2.5 Алгоритм сжатия файла
- 3. Функциональное описание разработки
- 4. Описание пользовательского интерфейса
- 5. Контрольные примеры
- 6. Выводы
Похожие материалы