Go to the documentation of this file.
46 idx_t fptr, rptr, lstptr;
49 mate =
ismalloc(bsize, -1,
"MinCover: mate");
50 flag =
imalloc(bsize,
"MinCover: flag");
52 queue =
imalloc(bsize,
"MinCover: queue");
53 lst =
imalloc(bsize,
"MinCover: lst");
56 for (
i=0;
i<asize;
i++) {
71 for (
i=0;
i<bsize;
i++) {
78 for (
i=0;
i<asize;
i++)
85 while (fptr != rptr) {
93 if (mate[
col] == -1) {
99 printf(
"\nSomething wrong, flag[%"PRIDX"] is 1",mate[
col]);
100 queue[rptr++] = mate[
col];
112 for (
i=0;
i<lstptr;
i++)
136 if (flag[
row] == 1) {
173 for (
i=0;
i<asize;
i++)
178 for (
i=0;
i<asize;
i++)
185 for (
i=0;
i<bsize;
i++)
191 for (
i=0;
i<bsize;
i++)
197 for (
i=0;
i<bsize;
i++)
227 if (mate[root] != -1)
252 if (mate[root] != -1)
void gk_free(void **ptr1,...)
idx_t idx_t idx_t * adjncy
idx_t MinCover_Augment(idx_t *xadj, idx_t *adjncy, idx_t col, idx_t *mate, idx_t *flag, idx_t *level, idx_t maxlevel)
void MinCover_Decompose(idx_t *xadj, idx_t *adjncy, idx_t asize, idx_t bsize, idx_t *mate, idx_t *cover, idx_t *csize)
void MinCover(idx_t *xadj, idx_t *adjncy, idx_t asize, idx_t bsize, idx_t *cover, idx_t *csize)
void MinCover_RowDFS(idx_t *xadj, idx_t *adjncy, idx_t root, idx_t *mate, idx_t *where, idx_t flag)
idx_t idx_t idx_t idx_t * where
void MinCover_ColDFS(idx_t *xadj, idx_t *adjncy, idx_t root, idx_t *mate, idx_t *where, idx_t flag)
gtsam
Author(s):
autogenerated on Sun Dec 22 2024 04:12:22