Обход красно черного дерева dfs
Как можно обойти с помощью dfs красно черное дерево, написал такой код, но работает не так:
void print_dfs(rbtree* root)
{
if (root != NULL && root!= null_node)
printf("%d key, %s value, %d color\n", root->key, root->value, root->color);
if (root->left != null_node)
{
printf("%d key, %s value, %d color\n", root->key, root->value, root->color);
print_dfs(root->left);
}
else if (root->right != null_node)
{
printf("%d key, %s value, %d color\n", root->key, root->value, root->color);
print_dfs(root->right);
}
}