4 int cs_reach (
cs *G,
const cs *B,
int k,
int *xi,
const int *pinv)
6 int p, n, top, *Bp, *Bi, *Gp ;
8 n = G->
n ; Bp = B->
p ; Bi = B->
i ; Gp = G->
p ;
10 for (p = Bp [k] ; p < Bp [k+1] ; p++)
14 top =
cs_dfs (Bi [p], G, top, xi, xi+n, pinv) ;
17 for (p = top ; p < n ; p++)
CS_MARK (Gp, xi [p]) ;
int cs_reach(cs *G, const cs *B, int k, int *xi, const int *pinv)
int cs_dfs(int j, cs *G, int top, int *xi, int *pstack, const int *pinv)