Как сказано в заголовке, я хочу сосчитать узлы для любого данного уровня дерева. Я уже знаю, как сделать функции-члены для подсчета всех узлов дерева, просто не знаю, как приблизиться к определенному уровню c. Вот что я попробовал. Любая помощь приветствуется.
Первый параметр - это точка на массив символов, введенный пользователем. root является закрытой переменной, представляющей «самый старый» узел.
int TreeType::GetNodesAtLevel(ItemType* itemArray, int level)
{
TreeNode* p = root;
if (itemArray == NULL)
return;
if (level == 0)
{
cout << p->info << " ";
return;
}
else
{
GetNodesAtLevel(itemarray->left, level); //dereference in one and not the other was just testing
GetNodesAtLevel(*itemarray->right, level); //neither seems to work
}
}