Дана строка, состоящая из заглавных английских букв. Требуется построить код, обладающий следующими свойствами:
- нужно присвоить коды только тем буквам, которые присутствуют во входной строке,
- каждый символ кодируется последовательностью нулей и единиц,
- никакой код не должен быть началом (префиксом) другого кода,
- длина закодированного сообщения должна получаться не больше, чем при использовании кода Шеннона-Фано
Рекомендуется написать два решения к этой задаче — в одном построить код Шеннона-Фано, в другом — код Хаффмана.