C ++ Двоичное деревоC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 C ++ Двоичное дерево

Сообщение Anonymous »

В настоящее время я работаю над проектом C ++, и его часть состоит в том, чтобы пересечь бинарное дерево, используя заказ, предварительный заказ и посторонний заказ. < /p>

class TNode
{
public:
int val;
TNode() {}
TNode(int v) { val = v; }
TNode * left;
TNode * right;
TNode * parent;
};

class BTree
{
void print_pre_order(TNode *r);// print the node as you traverse according to the order.
void print_in_order();
void print_post_order();
}

BTree::BTree()
{
root = new TNode(1);
root->parent = 0;
root->left = new TNode(2);
root->right = new TNode(3);
root->left->left = new TNode(4);
root->left->right = new TNode (5);
root->right->left = new TNode(6);
}
void BTree::print_pre_order(TNode *r)
{
if (r == 0)
{
return;
}
cout val;
print_pre_order(r->left);
print_pre_order(r->right);
}

int main()
{
BTree y;
y.print_pre_order(y.root);
return 0;
}
< /code>

В моем конструкторе по умолчанию я инициализировал значения для некоторых узлов, но когда я запускаю код, вывод, который я получаю, является «124» и получает ошибку. Я не знаю, где я сделал неправильно, может кто -нибудь помочь?

Подробнее здесь: https://stackoverflow.com/questions/495 ... -postorder
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»