Так как частота символа “a” больше чем символа “b”, то символ “a” является более вероятным и будет использован в качестве базового символа.
Сначала разделим все символы на два класса: Символ “a” будет в классе A, а символ “b” будет в классе B.
Затем снова разделим каждый класс на подклассы, основываясь на их частотах. Класс A будет разделен на два подкласса: (i) подкласс A1, содержащий символ “a”, и (ii) подкласс B1, содержащий пустое место. Класс B будет разделен таким же образом на подклассы B2 и A2.
Теперь присвоим коды каждому подклассу. Кодом подкласса A1 будет 0, а кодом подкласса B1 будет 1. Кодом подкласса B2 будет 00, а подкласса A2 будет 11.
Теперь, когда у нас есть коды для каждого подкласса, мы можем построить коды для блоков из двух символов: если первый символ в блоке принадлежит классу A, то его код будет 0; если он принадлежит классу B, то код будет 10.