fenix_63
17.01.2016 - 17:27
Всем привет народ. Вот такой вопрос.
По Алгоритму Хаффмана я закодировал входную строку (текст). Получил 0 и 1. Построил таблицу частот символов, и само дерево Хаффмана. Потом записываю эти 0 и 1 в txt-файл, НО размер txt-файла, содержащего 0 и 1 превышает размер файла с исходным текстом.
В общем я реализовал только кодирование по алгоритму Хаффмана, получил нули и единицы. Мне в конечном итоге нужно получить из исходного текстового файла - его упакованную версию (само собой с меньшим размером).
Потом уже буду из упакованной версии файла восстанавливать исходную строку символов. Не знаю, как эту последовательность бит упаковать, чтобы реально получилось сжатие.
Помогите, в какую сторону копать?
Например txt-файл, содержащий строку "test_string" занимает размер 11 байт, а файл, где каждый символ заменён на нули и единицы занимает 32 байта ((((
Valick
17.01.2016 - 17:31
вы уверены что там нули и единицы? как проверили то?
на самом деле я сильно сомневаюсь, что у вас получится меньший обьем
_____________
Стимулятор ~yoomoney - 41001303250491
Ну дык... А прежде чем пытаться столь высокие материи применит, не пробывали изучить предмет?
Сжатие хаффмана не предполагает возврат большого исходного теста.Только приблизительно.
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
T1grOK
18.01.2016 - 09:12
Алгоритм Хаффмана подразумевает работу с битами, а вы работаете как с символами.
_____________
Mysql, Postgresql, Redis, Memcached, Unit Testing, CI, Kohana, Yii, Phalcon, Zend Framework, Joomla, Open Cart, Ymaps, VK Api
Valick
18.01.2016 - 09:41
T1grOK, вот так взял и спалил контору
_____________
Стимулятор ~yoomoney - 41001303250491