Top level include containg common headers.
int(* f_set1)(t_gen, int)
Disjoint set operations func pointers.
t_gen create_disjoint_set(char *name, int size)
Create an instance of disjoint set data struct
struct t_djset_node t_dsetnode
Disjoint set node definition.
int(* f_set2)(t_gen, int, int)
struct disjoint_set t_disjset
Disjoint set main struct definition.
Disjoint set main struct definition.
f_print print
routine to print elements in the disjoint set
int size
Max size of elems stored in disjoint set.
f_set2 merge
routine to merge to set
char * name
Name of link list instance */.
f_destroy destroy
routine to destroy the instace of disjoint set
t_dsetnode * subset
Pointer to N sets.
f_set1 find
routine to find an elem in the set
f_vgen make
routine to add an new elem to the set
Disjoint set node definition.
int size
size of the current set
int parent
Parent idx of the set.
void(* f_vgen)(t_gen)
fn ptr that takes one gen ptr and return nothing
f_vgen f_print
fn type to print function
f_vgen f_destroy
fn type of destroy function
void * t_gen
Base Data type used for all data structure and data elements.