|
发表于 2018-4-20 17:30:42
From FishC Mobile
|
显示全部楼层
本帖最后由 圣狄雅哥 于 2018-4-20 18:37 编辑
// 建立带权值的有向图的邻接表结构
void CreateALGraph(GraphAdjList *G)
{
int i, j, k,w;
EdgeNode *e;
printf("请输入顶点数和边数:\n");
scanf("%d %d", &G->numVertexes, &G->numEdges);
// 读取顶点信息,建立顶点表
for( i=0; i < G->numVertexes; i++ )
{
scanf("%c", &G->adjList[i].data);
G->adjList[i].firstEdge = NULL; // 初始化置为空表
}
for( k=0; k < G->numEdges; k++ )
{
printf("请输入边(Vi,Vj)上的顶点序号:\n");
scanf("%d %d", &i, &j);
e = (EdgeNode *)malloc(sizeof(EdgeNode));
e->adjvex = j; // 邻接序号为j
printf("输入边(Vi,Vj)上边的权值;
scanf("%d",&w);
e->weight=w;
e->next = G->adjList[i].firstEdge;
G->adjList[i].firstEdge = e;
}
} |
|