Деревья (Tree)
Подпакет Tree содержит функции создания и применения древовидных структур, именуемых деревьями. Вот эти функции:
- MakeTree [list] – создает дерево по информации, представленной в списке list;
- TreeFind [tree, x] – возвращает позицию наименьшего элемента, превосходящего х в списке list, представляющем дерево.
Действие этих функций поясняют следующие примеры:
<<DiscreteMath` Tree` MakeTree[{e1, e2, e3, e4}] {{e2, 2), {{e1, 1}, {}, {}}, {{e3, 3}, {}, {{e4, 4}, {}, {}}}} tree = MakeTree[{8.5, 1.2, 9.1, 3.4, 5., 7.6.6.4}] {{6.4, 4}, {{3.4, 2}, {{1.2, 1}, {}, {}}, {{5., 3}, {}, {}}}, {{8.5, 6}, {{7.6, 5}, {}, {}}, {{9.1, 7}, {},{}}}} TreeFind[tree, 1.2] 1.. TreeFind[tree, 1] 0Для визуализации деревьев служат следующие функции:
- TreePlot [tree] – строит график дерева tree;
- ExprPlot [expr] – строит график, представляющий ехрг в виде дерева.
Примеры построения графиков деревьев представлены на рис. 11.18. Верхний график построен по данным дерева tree, определенного в приведенных выше примерах, а нижний – по данным случайного дерева.
Построение графиков деревьев по выражению ехрг с помощью функции ExprPlot демонстрирует рис. 11.19.

Рис. 11.18. Примеры визуализации деревьев

Рис. 11.19. Построение графиков деревьев с помощью функции ExprPlot
