Chapter Index | Slide Index | Frames [ Windows ] | Narrative On | <- prev | next -> |

Recursive Implementations 3

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

<- prev | next -> | Top of Page | 12. Binary Search Trees - 21 of 27