1. Заголовок темы должен быть информативным. В противном случае тема закрывается и удаляется ... 2. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM! 3. Одна тема - один вопрос (задача) 4.Спрашивайте и отвечайте четко и по существу!!!
Пытаюсь разобраться в алгоритме адаптивного арифметического кодирования (файл с исходником прилагается)
В литературе описано что этот способ может сжать строку состоящую из 100 символов "a" плюс 100 "b" плюс 100 "c" плюс 100 "d" лучше чем прямое кодирование Хафмана по 2 бита на символ. Попробовал - фигушки. По хафману получаю строку 100 байт, по арифметическому почти вдвое больше.
В чем дело? Может есть у кого исходники, которые обеспечивают заявленое арифметическое сжатие лучшее чем по Хафману?
В литературе описано что этот способ может сжать строку состоящую из 100 символов "a" плюс 100 "b" плюс 100 "c" плюс 100 "d" лучше чем прямое кодирование Хафмана по 2 бита на символ.
Каким это образом, интересно? Вообще - то метод адаптивного арифметического кодирования дает следующие результаты:
Цитата
Результаты сжатия, достигнутые данным алгоритмом ваpьиpуются от 4.8-5.3 битов/символ для коpотких текстов до 4.5-4.7 битов/символ для длинных.
Так что ни о каком результате в 2 бита на символ даже не мечтай, особенно на коротких текстах (до сотен килобайт)
Результаты сжатия, достигнутые данным алгоритмом ваpьиpуются от 4.8-5.3 битов/символ для коpотких текстов до 4.5-4.7 битов/символ для длинных.
Это касается простого алгоритма, когда нужно писать и таблицы и пр. а есть адаптивный, когда пишется только код. У меня книжка есть, там один автор написал, что адаптивный арифметический сжимает лучше Хафмана. Кроме того, эта прога (что я прикладывал) она сжимает почти в 2 бита - файл размером 20485 - в 5198. Вот я и интересовался, может в этой проге алгоритм просто немного криво реализован и можно его улучшить что бы было меньше чем 2 бита...
А сайты эти я все знаю не один день уже там одни и те же тексты лежат, ничего нового. Я бы мог пожалуй и побольше выложить только практичекой пользы от этих текстов никакой почти...