Я запутался в том, как вы инициализируете m_parent, чтобы указать на узел над дочерним элементом.C++ Как назначить указатель на родительский элемент в двоичном дереве
class Node
{
public:
Node(string city);
~Node();
string m_city;
int m_parent_distance;
Node *m_left;
Node *m_right;
Node *m_parent;
};
Node *m_root;
//void test_print(string target, Node *cur_root);
Node * find_node(Node *m_root, string target);
это конструктор узла
Stree::Node::Node(string city)
{
m_city = city;
m_left = NULL;
m_right = NULL;
//what do i do with m_parent??
m_parent_distance = 0;
}
Очень полезно, спасибо, это позволило мне обратить внимание на то, что я могу инициализировать m_parent при создании самого узла. т.е. m_root-> m_left = новый узел (city2, m_root); где вы можете легко увидеть, что m_root становится родителем! –