Рус Eng Cn Перевести страницу на:  
Please select your language to translate the article


You can just close the window to don't translate
Библиотека
ваш профиль

Вернуться к содержанию

Программные системы и вычислительные методы
Правильная ссылка на статью:

Горяинов С.И. Перестройка бинарных деревьев в алгоритме Хаффмана

Аннотация: Предметом данного исследования является время, затрачиваемое на полную перестройку бинарного дерева, а также степень сжатия текста в алгоритме Хаффмана. В работе определяются зависимости времени работы программы и степени сжатия текста от длины строки при произвольном количестве уникальных символов, при фиксированном количестве уникальных символов, а также при фиксированной длине строки и различном количестве уникальных символов. Показано, что время, требуемое на перестройку бинарного дерева, составляет незначительную часть общего времени работы программы. Алгоритм построения кодов символов включает следующие этапы: 1) считывание файла, содержащего текст; 2) подсчёт частот различных символов текста; 3) заполнение массивов данных и их сортировка; 4) построение бинарного дерева. В ряде источников утверждается, что подход, использующий полную перестройку бинарного дерева неэффективен. Однако это утверждение не подкреплено соответствующими фактами. В данной работе с помощью анализа текстов различной длины и количеством уникальных символов, представленного в табличном и графическом виде, показано, что перестройка бинарного дерева незначительно влияет на время работы программы.


Ключевые слова:

алгоритм Хаффмана, перестройка бинарного дерева, сжатие текстовых данных, время работы программы, экономное кодирование информации, префиксное кодирование, уникальные символы, степень сжатия текста, длина входной строки, средняя ошибка аппроксимации

Abstract: the subject of this study is the time required to complete a full rebuilding of a binary tree, as well as the degree of compression of text in Huffman algorithm. The author defines dependencies of both time of program execution and the level of text compression from the length of string formed of random set of unique symbols, from the length of string if it consists of fixed set of unique symbols and in the case of the fixed length of string having different number of unique symbols. It is shown that the time required to rebuild a binary tree is a small part of the total time of the program execution. An algorithm for constructing the character codes comprises the following steps: 1) reading the text from file; 2) counting different symbols of the text; 3) filling and sorting the data array; 4) building binary tree. Some sources state that the approach with full rebuilding of a binary tree is ineffective. However, that statement is not supported by relevant facts. The author proves through the analysis of texts of varying length and different sets of unique characters, presented in tabular and graphical form, that the rebuilding of a binary tree has little effect on the program execution time.


Keywords:

Huffman algorithm, binary tree rebuilding, compression of text data, program execution time, thrifty information encoding, prefix encoding, unique symbols, the degree of text compression, length of input string, average approximation error


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

Скачать статью

Библиография
1. Александров О.Е. Компрессия данных или измерение и избыточность информации. Метод Хаффмана: Методические указания к лабораторной работе / О. Е. Александров – Екатеринбург: УГТУ–УПИ, 2000. – 36 с.
2. Кудряшов Б.Д. Теория информации: Учебник для вузов. – СПб.: Питер, 2009. – 320 с.: ил. – (Серия «Учебник для вузов»)
3. Колмогоров А.Н. Теория информации и теория алгоритмов. – М.: Наука, 1987. – 304 с.
4. Свирид Ю.В. Основы теории информации: Курс лекций. – Мн.: БГУ, 2003. – 139 с.
5. Смирнов М.А. Обзор применения методов безущербного сжатия данных в СУБД: Рукопись. – СПб.: ГУАП, 2004. – 58 с.
6. Шеннон К. Работы по теории информации и кибернетике. – М.: Издательство иностранной литературы, 1963. – 825 с
References
1. Aleksandrov O.E. Kompressiya dannykh ili izmerenie i izbytochnost' informatsii. Metod Khaffmana: Metodicheskie ukazaniya k laboratornoy rabote / O. E. Aleksandrov – Ekaterinburg: UGTU–UPI, 2000. – 36 s.
2. Kudryashov B.D. Teoriya informatsii: Uchebnik dlya vuzov. – SPb.: Piter, 2009. – 320 s.: il. – (Seriya «Uchebnik dlya vuzov»)
3. Kolmogorov A.N. Teoriya informatsii i teoriya algoritmov. – M.: Nauka, 1987. – 304 s.
4. Svirid Yu.V. Osnovy teorii informatsii: Kurs lektsiy. – Mn.: BGU, 2003. – 139 s.
5. Smirnov M.A. Obzor primeneniya metodov bezushcherbnogo szhatiya dannykh v SUBD: Rukopis'. – SPb.: GUAP, 2004. – 58 s.
6. Shennon K. Raboty po teorii informatsii i kibernetike. – M.: Izdatel'stvo inostrannoy literatury, 1963. – 825 s