Лучшее описание алгоритма Хаффмана

Тема в разделе "WASM.A&O", создана пользователем MAPTbIH, 29 янв 2007.

  1. MAPTbIH

    MAPTbIH Member

    Публикаций:
    0
    Регистрация:
    3 янв 2006
    Сообщения:
    84
    Нет, друзья Proteus и Booster, проблема была в том, как записать битовые цепочки (коды Хаффмана) в область памяти одна за другой. Пример:
    1001 - 4 бита
    1011 - 4 бита
    1010 - 4 бита
    1000 - 4 бита
    00 - 2 бита
    010 - 3 бита
    Требовалось записать их так:
    100110111010100000010, т.е. одна за другой! Но проблема уже решена! Лучше подскажите где можно достать доходчивую доку по арифметическому кодированию!
     
  2. Proteus

    Proteus Member

    Публикаций:
    0
    Регистрация:
    19 июн 2004
    Сообщения:
    344
    Адрес:
    Russia
    давай на мыло суну
     
  3. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    MAPTbIH
    Ну уж проблема.

    Не знаю насчёт доходчивости но всё же, вроде нормальное описание.
     
  4. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Что за чудеса с аттачем.
     
  5. IceFire

    IceFire New Member

    Публикаций:
    0
    Регистрация:
    30 окт 2006
    Сообщения:
    244
    MAPTbIH

    Фтопку Хаффмана и Арифметическое кодирование. Арифметик можно применять тока как дополнение к более серьезным алгоритмам на втором, третьем этапах.

    В качестве идеального пре-алгоритма для твоих задач могу посоветовать BWT+LZ78 или BWT+Distance Coder. Я с помощью этих методов WinRAR уделывал ))))
     
  6. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    IceFire
    Ну это не супер достижение.
    WinRar архиватор общего назначения, и конечно не всегда оптимально сжимает.
    Всякому алгоритму свои файлы. LZ алгоритмы конечно хорошие и в принципе могут дать очень большую степень сжатия, но для них нужно большое кол-во повторяющихся последовательностей. А Хаффмана и Арифм. работают с фиксированными по размеру элементами, и какой размер элементов даст лучшее сжатие ещё конечно вопрос.
    Тот же галимый RLE, может намного лучше сжать чем арифм. но ведь врядли кто скажет что этот алгоритм лучше Хаффмана.

    З.Ы. Не понял что за фигня с аттачами? Второй день не работает.
     
  7. MAPTbIH

    MAPTbIH Member

    Публикаций:
    0
    Регистрация:
    3 янв 2006
    Сообщения:
    84
    IceFire
    Мозгу моему всё тяжелее и тяжелее от количества прочитанной литературы, но усвоено только около 30%. Как же это всё сложно! Мне пока непонятно, что такое BWT и многое другое. Буду читать медленно, вслух от начала и до конца литературу с сайта compression.ru. Выхода иного больше я не вижу...
     
  8. IceFire

    IceFire New Member

    Публикаций:
    0
    Регистрация:
    30 окт 2006
    Сообщения:
    244
    MAPTbIH

    Я вот не дошел до конца...может - ты дойдешь... В моем случае было написано ядро протектора/упраковщика, далее я начал писать алгоритм сжатия секций...но на полпути спекся...
     
  9. alex_kolomna_7

    alex_kolomna_7 New Member

    Публикаций:
    0
    Регистрация:
    1 мар 2007
    Сообщения:
    1
    А как можно с этим замечательным трудом ознакомиться?
     
  10. MCNet

    MCNet New Member

    Публикаций:
    0
    Регистрация:
    23 ноя 2006
    Сообщения:
    74
    Вот что вики про это знает: http://ru.wikipedia.org/wiki/Алгоритм_Хаффмана