| | | | | |

Recursive Implementations 3

static Node* RClone(const Node* n)
// returns a pointer to a deep copy of n
{
  if (n == nullptr)
    return nullptr;
  typename BST<T>::Node* newN = NewNode (n->value_);
  newN->lchild_ = RClone(n->lchild_);
  if (newN->lchild_ != nullptr)
    newN->lchild_->parent_ = newN;
  newN->rchild_ = RClone(n->rchild_);
  if (newN->rchild_ != nullptr)
    newN->rchild_->parent_ = newN;
  return newN;
}

| | Top of Page | 12. Binary Search Trees - 21 of 41