我正在使用邻接列表创建图表。
typedef struct node
{
struct node *next;
int value;
int to;
} node;
typedef struct bag
{
node *first;
int size;
} bag;
node
是图中的每条边,bag
是顶点所有相邻边的列表。
我想创建一个数据结构Adjacency List
,使列表是 bag *
的数组。
像这样的东西 -
bag **adjacency_list;
但是我对如何初始化adjacency_list
感到困惑。
我希望我的adjacency_list's
大小等于可以在将来添加更多顶点的顶点数量。
如果我初始化如下 -
adjacency_list = malloc(no_vert * sizeof(*adjacency_list));
我如何为每个顶点添加相应的包(边)?
答案 0 :(得分:0)
如果您需要链表,则无需双指针。即定义bag * adjacency_list;
。