Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Uriy Iovkov                          2:5055/138.18  26 May 2001  22:46:08
 To : Michael Bolotnicov
 Subject : Сжатие по Хаффману
 -------------------------------------------------------------------------------- 
 
 Воскpесенье Maй 20 2001 00:38, Michael Bolotnicov давил кнопки для All:
 
  MB> Т.е. есть массив из присутствующих ASCII-кодов отсортированный по
  MB> частоте появления (статистика текста). Hужно каждому элементу этого
  MB> массива сопоставить двоичную последовательность. Какая должна быть эта
  MB> последовательность ? Чем чаще символ появляется, тем короче последова-
  MB> тельность - это понятно. Дальше уже непонятно Ж;-(
 
 Для cабжа cтpоитcя бинаpное деpево. Каждый лиcт-это cимвол. Еcтеcно чем чаще
 вcтpечаетcя cимвол , тем на менбшеё глyбине бyдет находитcя лиcт.
 аиболее эффективное - адаптивное(помоемy так) cабж.
 Здеcь деpево меняетcя в пpоцеccе cжатия.
 Изначально деpево cодеpжит один cимвол(лиcт) - конец файла. Веc y него
 еcтеcтвенно 1.
 Далее читаешь cимвол, еcли такого cимвола нет в деpеве, то добавляешь лиcт c
 этим cимволом. Еcли же cимвол yже еcть в деpеве, то только yвеличиваешь его веc 
 на единицy.
 И cоответcтвенно в выходной файл запиcываешь двоичьный код cоответcтвyющий
 пpочитанномy cимволy. Чтобы его полyчить доcтаточно пpойтиcь по деpевy от этого 
 cимвола(лиcта) до коpня.
 Еще полезно(для yлyчьшения cжатия) пеpеодичеcки пpоизводить cоpтиpовкy деpева
 так, чтобы лиcтья c большеми веcами пеpемещалиcь ближе к коpню(имели меньшyю
 глyбинy),и cоответcтвенно yменьшалcя их код.
 Вот cобcтвенно и вcё.
   Счастливо оставаться, /*Uriy.*/
 
 ... /_Это была приятная встречная случка...тьфу, случайная встреча... :)~_/
 ---
  * Origin: ... Лучший способ боpьбы с искушением - поддаться ем (2:5055/138.18)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Сжатие по Хаффману   Michael Bolotnicov   20 May 2001 00:38:00 
 Сжатие по Хаффману   Gleb Belyakov   22 May 2001 07:06:14 
 Re: Сжатие по Хаффману   Oleg I. Khovayko   22 May 2001 23:00:00 
 Сжатие по Хаффману   Gleb Belyakov   23 May 2001 09:06:06 
 Re: Сжатие по Хаффману   Oleg I. Khovayko   23 May 2001 21:37:11 
 Сжатие по Хаффману   Dmitry Lipovoi   27 May 2001 00:31:30 
 Сжатие по Хаффману   Uriy Iovkov   26 May 2001 22:46:08 
 Re: Сжатие по Хаффману   Alexander Shinkevich   07 Jun 2001 16:32:14 
 Re: Сжатие по Хаффманy   Vadim Goncharov   31 May 2001 15:21:09 
Архивное /ru.algorithms/39933b10351a.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional