Изменения

Перейти к: навигация, поиск
м
Реализация
=== Реализация ===
<span style="color:Green">// s - наша строка обхода, tree[] - дерево вершин, code - текущий код, alphabet[] - массив кодов символов, </span> <span style="color:Green">// c'[] - номера символов в порядке обхода</span> '''huffmanfunction'''huffman(): <span style="color:Green">//текущая вершина - корень дерева</span>
curV = root
'''for''' i = 0..n - 2
'''if''' s[i-й символ s ] == 'D'
curV = tree[curV].leftChild
code += '0'
'''while''' curV является правым ребенком и curV не корень
curV = tree[curV].parent
//удалить из code последний символ
curV = tree[curV].rightChild
code += '1'
32
правки

Навигация