5 typedef struct bbt_treap {
12 x0 = (22611*x0 + 10) % 44071;
20 t->left = t->left->right;
30 t->right = t->right->left;
45 if (t->left->priority > t->right->priority) {
91 c = (*compare)(
new,
t);
97 t->left =
insert(
new, t->left, compare);
98 if (t->priority < t->left->priority)
102 t->right =
insert(
new, t->right, compare);
103 if (t->priority < t->right->priority)
118 *r =
insert(n, *r, compare);
static bbt * rotate_right(bbt *t)
static bbt * delete_root(bbt *t)
static bbt * insert(bbt *new, bbt *t, int(*compare)())
static int pseudo_random(void)
static bbt * rotate_left(bbt *t)
void bbt_delete_bbt(void *root, void *old, int(*compare)())
static bbt * delete_treap(bbt *old, bbt *t, int(*compare)())
void bbt_insert_bbt(void *root, void *new, int(*compare)())
subroutine t(CDPREF, CDSUFF, KCODPA, LDNIVA, PMULTI)