给定无向图带权图的数据类型如下
define MAXVEX 1000 //最大顶点数
typedef char VertexType;
typedef struct ENode
{
int adjVertex; //该边所指的顶点编号
int weight; //边权
struct ENode *nextEdge; //下一条边
} ENode;
typedef struct VNode
{
VertexType data; //顶点信息
int visited; //遍历标记. 1:已遍历 0:未遍历
ENode *firstEdge; //第一条出边
} VNode;
typedef struct
{
VNode vexs[MAXVEX];
int vertexNum,edgeNum; //点数和边数
}AdjGraph,*Graph;
请设计int degree(Graph g, VertexType v)函数。
该函数返回图g中顶点v的度,已知顶点在图中。
int degree(Graph g, VertexType v)
{
int i,d=0;
ENode *p;
p=g->vexs[i].firstEdge;
i=locateVertex(g,v);
while(p!=NULL){
d++;
p=p->nextEdge;
}
return d;
}