Ejemplo n.º 1
0
void nodeset_delete_rank (nodeset_t *n, uint32_t r)
{
    assert (n->magic == NS_MAGIC);
    if (r <= ABS_MAX_RANK)
        vebdel (n->T, r);
    n->s_valid = false;
}
Ejemplo n.º 2
0
Veb
fill(uint M)
{
	Veb T = vebnew(M,1);
	for (int i = 0; i < 0xff; ++i) {
		uint x = rand()%M;
		vebdel(T,x);
		test(vebpred(T,x) != x);
	}
	return T;
}
Ejemplo n.º 3
0
void nodeset_delete_range (nodeset_t *n, uint32_t a, uint32_t b)
{
    assert (n->magic == NS_MAGIC);

    uint32_t r;
    uint32_t lo = MIN(a,b);
    uint32_t hi = MAX(a,b);

    for (r = lo; r <= hi; r++)
        if (r <= ABS_MAX_RANK)
            vebdel (n->T, r);
    n->s_valid = false;
}
Ejemplo n.º 4
0
int
main(void)
{
	srand(438749);
	uint M = rand()%(1<<16);
	Veb T = fill(M);
	uint i = i = vebpred(T,M-1);
	while (i < M) {
		vebdel(T,i);
		uint j = vebpred(T,i);
		test(i != j);
		i = j;
	}
	free(T.D);
	return 0;
}