LINUX.ORG.RU

Работа с двоичным деревом

 ,


0

1

У меня есть двоичное дерево, которое хранится в виде вложенных списков, например, [[L1,[L2,[L5,L6]]],[L3,L4]]. Каким образом это дерево можно перевести в последовательность бит, например, L1 - 00 L2 - 010 L5 - 0110 L6 - 0111 L3 - 10 L4 - 11 ?

Ответ на: комментарий от anonymous
vizit = lambda args: sum([ vizit(x) if type(x) is list else [x] for x in args ], [])

vizit(tree) дает список листьев дерева. Дальше либо ".join(vizit(tree)) если листья строки, либо reduce-ом их, либо еще как.

AIv ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.