tree insert( key, t )
typekey key;
tree t;
{ if( t == NULL ) {
t = NewNode( key, NULL, NULL );
t->weight = 2;
}
else if( t->k == key )
Error; /*** Key already in table ***/
else { if( t->k < key ) t->right = insert( key, t->right );
else t->left = insert( key, t->left );
t->weight = wt( t->left ) + wt( t->right );
t = checkrots( t );
}
return( t );
}
|