Решение. 1. Будем последовательно приписывать вершинам данного ордерева двоичные строки, состоящие из нулей и единиц

1. Будем последовательно приписывать вершинам данного ордерева двоичные строки, состоящие из нулей и единиц. Корню не припишем ничего, его левому потомку припишем 0, правому – 1 (рис 22).

Рис. 22.

2. Левому потомку 0 припишем индекс 00, а правому – 01, левому потомку 1 припишем индекс 10, а правому – 11 (см. рис 23).

 

Рис. 23.

3. Продолжим этот процесс, пока все висячие вершины не получат некоторый двоичный индекс (рис. 24).

 
 

Рис. 24.

4. Выпишем индексы висячих вершин слева направо.

{000, 001, 011, 101, 11}.

Это и есть префиксный код для заданного бинарного ордерева.

4. Восстановить бинарное ордерево по префиксному коду {00,010,011,101,11}.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: