/* 用图邻接矩阵表示实现的一些基本运算*/
#define MAXVEX 20
#define null -1
typedef char VexType;
typedef float AdjType;
typedef struct
{ VexType vexs[MAXVEX]; /* 顶点信息 */
AdjType arcs[MAXVEX][MAXVEX]; /* 边信息 */
int n; /* 图的顶点个数 */
}GraphMatrix;
int firstVertex(GraphMatrix* pgraph)
{
return null;
else return 0;
}
int nextVertex(GraphMatrix* pgraph,int n)
{
if(n==pgraph->n-1)
return null;
else return n+1;
}
int firstAdjacent(GraphMatrix* pgraph, int i)
{ int k;
for(k=0;k<pgraph->n;k++)
if(pgraph->arcs[i][k]!=0) return k;
return null;
}
int nextAdjacent(GraphMatrix* pgraph, int i, int j)
{ int k;
for(k=j+1; k<pgraph->n; k++)
if(pgraph->arcs[i][k]!=0) return k;
return null;
}
int main(){
return 0;
}
本文介绍了一种使用邻接矩阵表示图的基本运算实现方法。通过定义图的结构体,包括顶点信息和边信息,实现了获取第一个顶点、下一个顶点、第一个邻接点及下一个邻接点的功能。
1142

被折叠的 条评论
为什么被折叠?



