用深度优先搜索判断
typedef struct
{
char vex[Max];
int arc[Max][Max];
int vexnum,arcnum;
}MGraph;
bool visited[Max];
bool Judge(MGraph G)
{
for(int v=0,v<G.vexnum,v++)
{
visited[v]=false;
}
DFS(G,0);
for(int v=0;v<G.vexnum;v++)
if(!visited[v])
return false;
return true;
}
void DFS(MGraph G,int v)
{
visited[v]=true;
for(w=FistNeighbor(G,v);w>=0;w=NextNeighbor(G,v,w))
{
if(!visited[w])
DFS(G,w);
}
}