Предположим, нам дан выход прохождения порядка уровней.Как построить бинарное дерево из того, что заполнено данными в правильных позициях?
Обратите внимание, что я не пытаюсь нарисовать дерево из заданного выходного обхода, а затем считываю данные обхода из массивазаполнить им двоичное дерево путем фактического кодирования на C.
Например:
Пусть a [] = {A, B, C, D, E, F, G};// выходной поток в массиве
Таким образом, дерево порядка уровней будет выглядеть так:
A
/ \
B C
/ \ / \
D E F G
Предположим, что существует структура древовидного узла, например:
typedef struct node
{
char data;
struct node* left;
struct node* right;
}tree;
Теперь я пытаюсь прочитать значения [] и закодировать это дерево, чтобы оно выглядело как диаграмма.Существует много примеров порядка уровней traversal , но не удалось найти ничего подходящего для фактического кодирования для двоичного дерева construction .Это своего рода «обратный ход».
Также обратите внимание, что это не домашняя работа, хотя у меня нет проблем с ее пометкой, если больше людей заметят это таким образом.:)