Основной принцип алгоритма Хаффмана заключается в том, что зная вероятности появления символов в сообщении, можно описать процедуру построения кодов переменной длины, состоящих из целого количества битов. 2 Символам с большей вероятностью ставятся в соответствие более короткие коды. 2
Алгоритм использует тот факт, что определённые символы в тексте встречаются чаще, чем другие. 45 Если для записи распространённых символов применять укороченные наборы бит, а для записи редких символов использовать длинные битовые наборы, то суммарный объём файла должен стать меньше. 4
За счёт этого удаётся сжать данные примерно на 50–60%. 1
На входе в алгоритме Хаффмана должна быть уже задана таблица частот, без неё кодирование невозможно. 3