Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Ада и другие языки _ Сжатие методом Хаффмана

Автор: Янычар 18.04.2008 18:01

Прошу помочь мне в одной частной проблеме возникающей у меня при реализации этого алгоритма. Не знаю правильно ли я вобще делаю эту программу и поэтому краткой строкой опишу те действия которые уже успел сделать: первым делом в программе указывается входной файл, а ттчнее путь к нем. Затем считается число символов этого файла, чтобы создать динамический массив для хранения символов. Затем в результате некотрых операций с этим массивом создается еще два массива один из которых представляет собой набор символов без повторений этого файла а второй соответствующие этим символам их частоты появления в файле. Также есть ф-ия которая упорядочивает массив чатсот по убыванию так что самая маленькая частота оказывается в конце. Создается дерево в корень которого записывается сумма частот. А дальше проблемы: я научился даже чтобы в результате циклов последовательно выдавались предыдущие суммы ( кто знает алгоритм Хаффмана тот поймет надеюсь) наименьших частот. А проблема собственно состоит в том, что я не знаю как их записать правильно в дерево, с учетом того что при формировании сукмм наименьших частот каждый раз происходит упорядочивание массива по убыванию. Или может вообще не следует пользоваться бинарным деревом, которое у меня создается динамически?