Как мне разобрать целое 2-3 дерева?
У меня есть 2-3 дерева со следующей структурой узла:
struct node
{
int value1, value2;
node *parent, *left, *right, *middle;
}
Проблема в том, что я не знаю, как разобрать все дерево. Я знаю, как мы его ищем, потому что вы просто идете по правильному пути. Но как мне проверить все узлы в дереве?
1 ответ
Решение
Вот псевдокод, который может помочь:
void ParseNode(node *n)
{
OperationToParseCurrentNode();
if(n->left)
ParseNode(n->left);
if(n->middle)
ParseNode(n->middle);
if(n->right)
ParseNode(n->right);
}
Это будет проходить через все узлы, если вы введете корневой узел.