//--- public insert ( )------- template void BST::insert (const Comparable & x) { insert (x, root); } // --- private insert ( ) ------ template void BST:: insert (const Comparable & x, BinaryNode * &t ) { if (t == NULL) t = new BinaryNode (x, NULL, NULL); else if (x < t->element) insert (x, t->left); else if (t->element < x) insert (x, t->right); else ; // Duplicate, do nothing }