文档介绍:-
. z.
数据构造实验报告
第 6 次实验
**:20141060106 :叶佳伟
一、实验目的
1、复习图的逻辑构造、存储构造及根本操作;
/*自动赋值顶点向量*/
}
for(i = 0; i < G->ve*num; i++)
{
-
. z.
for(j = 0; j < G->ve*num; j++) /*赋初值*/
{
G->arcs[i][j].adj = INFINITY;
G->arcs[i][j].info = NULL;
}
}
for(k = 0; k < G->arum; k++)
{
scanf("%s%s", v1, v2); /*输入一条边依附的顶点和权值*/
i = LocateVe*(G, v1); /*确定v1和v2在G中位置*/
j = LocateVe*(G, v2);
G->arcs[i][j].adj = 1; /*弧的权值赋值*/
}
}
/*建立有向网*/
void CreateDN(MGraph *G)
{
int i, j, k, w;
char v1[5], v2[5];
printf("输入顶点数和弧数 : ");
scanf("%d%d", &G->ve*num, &G->arum);
getchar();
-
. z.
for(i = 0; i < G->ve*num; i++)
{
scanf("%s", G->ve*s[i]); /*自动赋值顶点向量*/
}
for(i = 0; i < G->ve*num; i++)
{
for(j = 0; j < G->ve*num; j++) /*赋初值*/
{
G->arcs[i][j].adj = INFINITY;
G->arcs[i][j].info = NULL;
}
}
for(k = 0; k < G->arum; k++)
{
scanf("%s%s%d", v1, v2, &w); /*输入一条边依附的顶点和权值*/
i = LocateVe*(G, v1); /*确定v1和v2在G中位置*/
j = LocateVe*(G, v2);
G->arcs[i][j].adj = w; /*弧的权值赋值*/
}
}
/*建立无向图*/
void CreateUDG(MGraph *G)
-
. z.
{
int i, j, k;
char v1[5],v2[5];
printf("输入顶点数和弧数 : ");
scanf("%d%d", &G->ve*num, &G->arum);
getchar();
for(i = 0; i < G->ve*num; i++)
{
scanf("%s", G->ve*s[i]); /*自动赋值顶点向量*/
}
for(i = 0; i < G->ve*num; i++)
{
for(j = 0; j < G->ve*num; j++) /*赋初值*/
{
G->arcs[i][j].adj = INFINITY;
G->arcs[i][j].info = NULL;