Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №3664397
А
Аноним
17 сентября 2026 16:30 · публичный вопрос
А
Аноним

Построить дерево калькулятор хода хаффмана с фразой Карл у Клары ккал кораллы

Ответ нейросети

Краткий ответ

Считаем пробел отдельным символом, а К и к — разными символами. Для фразы «Карл у Клары ккал кораллы» один из корректных вариантов дерева Хаффмана даёт такие коды:

Символ Частота Код
л 5 00
к 3 011
у 1 0100
о 1 0101
р 3 100
пробел 4 101
а 4 110
К 2 1110
ы 2 1111

Здесь ␠ обозначает пробел.

1. Подсчитаем частоты

Карл␠у␠Клары␠ккал␠кораллы
  • л — 5 раз;
  • а и пробел — по 4 раза;
  • р и к — по 3 раза;
  • К и ы — по 2 раза;
  • у и о — по 1 разу.

2. Объединяем два самых редких узла

  1. у(1) + о(1) → 2
  2. К(2) + ы(2) → 4
  3. (уо)(2) + к(3) → 5
  4. р(3) + ␠(4) → 7
  5. а(4) + (Кы)(4) → 8
  6. л(5) + (уок)(5) → 10
  7. (р␠)(7) + (аКы)(8) → 15
  8. (луок)(10) + (р␠аКы)(15) → 25

3. Дерево Хаффмана

При движении влево записываем 0, вправо — 1.

(25)
├──0── (10)
│      ├──0── л(5)
│      └──1── (5)
│             ├──0── (2)
│             │       ├──0── у(1)
│             │       └──1── о(1)
│             └──1── к(3)
└──1── (15)
       ├──0── (7)
       │       ├──0── р(3)
       │       └──1── ␠(4)
       └──1── (8)
               ├──0── а(4)
               └──1── (4)
                       ├──0── К(2)
                       └──1── ы(2)

4. Проверка

Длина закодированной фразы:

\[ 5\cdot2+3\cdot3+1\cdot4+1\cdot4+ 3\cdot3+4\cdot3+4\cdot3+2\cdot4+2\cdot4=76 \]

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

Важно: слово ккал обработано ровно так, как оно написано. Если имелось в виду классическое слово украл, дерево будет другим.

Обсуждение

2 сообщения
А
Аноним

Построить дерево калькулятор хода хаффмана с фразой Карл у Клары украл кораллы

Нейросеть

Для фразы «Карл у Клары украл кораллы» считаем пробел отдельным символом, а К и к — разными символами.

1. Частоты символов

Символ Частота
л 5
а 4
р 4
пробел ␠ 4
К 2
у 2
к 2
ы 2
о 1

Всего: \(26\) символов.

2. Объединение узлов

Один из вариантов хода алгоритма Хаффмана:

\[ \begin{aligned} о(1)+К(2)&=3,\\ у(2)+к(2)&=4,\\ ы(2)+3&=5,\\ 4+а(4)&=8,\\ р(4)+\text{␠}(4)&=8,\\ л(5)+5&=10,\\ 8+8&=16,\\ 10+16&=26. \end{aligned} \]

3. Дерево Хаффмана

Слева направо: 0 и 1.

                         (26)
                       /      \
                    0 /        \ 1
                     (10)      (16)
                    /   \      /    \
                 0 /     \ 1 0/      \1
                  л(5)    (5) (8)    (8)
                         /  \ /  \    / \
                      0 /    \1 0/ \1 0/  \1
                       ы(2)  (3) (4) а(4) р(4) ␠(4)
                             / \  / \
                          0 /   \1 0/ \1
                           о(1) К(2) у(2) к(2)

4. Коды Хаффмана

Символ Частота Код
л 5 00
ы 2 010
о 1 0110
К 2 0111
у 2 1000
к 2 1001
а 4 101
р 4 110
пробел ␠ 4 111

Закодированная фраза по символам:

0111 101 110 00 111 1000 111 0111 00 101 110 010
111 1000 1001 110 101 00 111 1001 0110 110 101 00 00 010

Длина получившегося кода:

\[ 5\cdot2+4\cdot3+4\cdot3+4\cdot3+ 2\cdot4+2\cdot4+2\cdot4+2\cdot3+1\cdot4 =80\text{ бит}. \]

При одинаковых частотах можно получить другое, но также правильное, дерево Хаффмана.