Junção de duas BSTs arbitrárias

From Wiki**3

As árvores não estão relacionadas. insertT é o algoritmo para inserção de elementos na raiz de uma BST.

 link STjoin(link a, link b) {
   if (a == z) return b;
   if (b == z) return a;
   b = insertT(b, a->item);
   b->l = STjoin(a->l, b->l);
   b->r = STjoin(a->r, b->r);
   free(a);
   return b;
 }