]>
wirehaze git hosting - graph-theory.git/blob - graph/adj.c
6 new_graph (unsigned int nv
)
16 if (!(g
= malloc (sizeof *g
)))
21 if (!(g
->v
= calloc (nv
, sizeof *g
->v
)))
31 new_arc (struct graph
*g
, unsigned int vi
, unsigned int vj
)
35 if (vi
>= g
->nv
|| vj
>= g
->nv
)
36 return -(errno
= EINVAL
);
38 if (!(e
= malloc (sizeof *e
)))
42 e
->next
= g
->v
[vi
].adj
;
49 new_edge (struct graph
*g
, unsigned int vi
, unsigned int vj
)
54 return -(errno
= EINVAL
);
56 if ((err
= new_arc (g
, vi
, vj
)))
59 if ((err
= new_arc (g
, vj
, vi
)))