Консультация № 194599
04.02.2019, 23:17
0.00 руб.
0 2 1
Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос:
Построить кодовое дерево и код Хаффмена для последовательности символов is assumed that each symbol requires the same

Обсуждение

давно
Старший Модератор
31795
6196
07.02.2019, 13:26
общий
Адресаты:
Что именно у Вас не получается?
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

давно
Старший Модератор
31795
6196
09.02.2019, 17:55
общий
это ответ
Здравствуйте, naks1mok!

Строка: is assumed that each symbol requires the same, содержит 45 символов(пробелы тоже считаем). Сперва считаем символы и заносим их в таблицу, сортируем, по не возрастанию. Процесс преобразования сводится к суммирования двух минимальных, правых позиций и соответственно сразу отсортировать, следующую строку. Красным выделено место, куда попадает текущая сумма, также это позиция, отмечается символом "+"-узел, на который замыкается, либо другие узлы, либо конечные символы.
Я сортировал по количеству цифр в строке, как самое простое, хотя с помощью простых преобразований, можно перейти к вероятностной или процентной оценке.

Само преобразование:
[table][row][col]"i"[/col][col]"s"[/col][col]" "[/col][col]"a"[/col][col]"u"[/col][col]"m"[/col][col]"e"[/col][col]"d"[/col][col]"t"[/col][col]"h"[/col][col]"c"[/col][col]"y"[/col][col]"b"[/col][col]"o"[/col][col]"l"[/col][col]"r"[/col][col]"q"[/col][/row][row][col]2[/col][col]6[/col][col]7[/col][col]4[/col][col]2[/col][col]3[/col][col]6[/col][col]1[/col][col]3[/col][col]3[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][col]2[/col][col]1[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col]"a"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col]"i"[/col][col]"u"[/col][col]"r"[/col][col]"d"[/col][col]"c"[/col][col]"y"[/col][col]"b"[/col][col]"o"[/col][col]"l"[/col][col]"q"[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]2[/col][col]2[/col][col]2[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col]"a"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col]"i"[/col][col]"u"[/col][col]"r"[/col][col red]"+"[/col][col]"d"[/col][col]"c"[/col][col]"y"[/col][col]"b"[/col][col]"o"[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][col]1[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col]"a"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col]"i"[/col][col]"u"[/col][col]"r"[/col][col]"+"[/col][col red]"+"[/col][col]"d"[/col][col]"c"[/col][col]"y"[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]1[/col][col]1[/col][col]1[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col]"a"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col]"i"[/col][col]"u"[/col][col]"r"[/col][col]"+"[/col][col]"+"[/col][col red]"+"[/col][col]"d"[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]1[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col]"a"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col red]"+"[/col][col]"i"[/col][col]"u"[/col][col]"r"[/col][col]"+"[/col][col]"+"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]3[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]2[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col]"a"[/col][col red]"+"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col]"+"[/col][col]"i"[/col][col]"u"[/col][col]"r"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]4[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]3[/col][col]2[/col][col]2[/col][col]2[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col]"a"[/col][col]"+"[/col][col red]"+"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col]"+"[/col][col]"i"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]4[/col][col]4[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]3[/col][col]2[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col red]"+"[/col][col]"a"[/col][col]"+"[/col][col]"+"[/col][col]"m"[/col][col]"t"[/col][col]"h"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]5[/col][col]4[/col][col]4[/col][col]4[/col][col]3[/col][col]3[/col][col]3[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col]"s"[/col][col]"e"[/col][col red]"+"[/col][col]"+"[/col][col]"a"[/col][col]"+"[/col][col]"+"[/col][col]"m"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]6[/col][col]6[/col][col]6[/col][col]5[/col][col]4[/col][col]4[/col][col]4[/col][col]3[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col]" "[/col][col red]"+"[/col][col]"s"[/col][col]"e"[/col][col]"+"[/col][col]"+"[/col][col]"a"[/col][col]"+"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]7[/col][col]7[/col][col]6[/col][col]6[/col][col]6[/col][col]5[/col][col]4[/col][col]4[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col red]"+"[/col][col]" "[/col][col]"+"[/col][col]"s"[/col][col]"e"[/col][col]"+"[/col][col]"+"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]8[/col][col]7[/col][col]7[/col][col]6[/col][col]6[/col][col]6[/col][col]5[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col red]"+"[/col][col]"+"[/col][col]" "[/col][col]"+"[/col][col]"s"[/col][col]"e"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]11[/col][col]8[/col][col]7[/col][col]7[/col][col]6[/col][col]6[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col red]"+"[/col][col]"+"[/col][col]"+"[/col][col]" "[/col][col]"+"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]12[/col][col]11[/col][col]8[/col][col]7[/col][col]7[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col red]"+"[/col][col]"+"[/col][col]"+"[/col][col]"+"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]14[/col][col]12[/col][col]11[/col][col]8[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col red]"+"[/col][col]"+"[/col][col]"+"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]19[/col][col]14[/col][col]12[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][col][/col][/row][row][col red]"+"[/col][col]"+"[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][row][col]26[/col][col]19[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][col]-[/col][/row][/table]

Все, после этого можно строить само дерево.
По разным источникам, четкого мнения куда ставить "1" или "0" - нет, но мне нравится мнение, что "1" - ставится в сторону большего из слагаемых и в сторону конечного символа.
Удачи!
Об авторе:
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.

Форма ответа