Я чувствую себя смущенным указателями в C++, где я пытаюсь реализовать BST.Рекурсивный вызов и назначение опорных указателей
Вместо (метода 1), имеющий тип узла, я хочу использовать опорный указатель (метод 2).
- Как я могу переписать if-инструкцию, чтобы она работала в методе, в котором указатели использовались?
- Как узел p в (2) может быть назначен другому временному узлу?
Большое вам спасибо.
//1
node* delete(node* p, int k) // deleting k key from p tree
{
if(k < p->key)
p->left = remove(p->left,k);
}
//2
void delete(int key, node*& p) {
// recursive call while key is less and assign a new left child.
if(k < p->key) {
//??
}
}
Способ 1 не работает. Возможно, вы захотите что-то вернуть. – Peter
'delete' - это ключевое слово в C++. –