
void FindArticul ( ALGraph G )
{ /*连通图G 以邻接表作存储结构,查找并输出G 上全部关节点*/
count=1; /*全局变量count 用于对访问计数*/
visited[0]=1; /*设定邻接表上0 号顶点为生成树的根*/
for ( i=1; i<G.vexnum; ++i ) /*其余顶点尚未访问*/
visited[i]=0;
p=G.adjlist[0].first;
v=p->adjvex;
DFSArticul ( g,v ); /*从顶点v 出发深度优先查找关节点*/
if ( count<G.vexnum ) /*生成树的根至少有两棵子树*/
{
printf ( 0,G.adjlist[0].vertex ); /*根是关节点,输出*/
while ( p->next )
{
p=p->next;
v=p->adjvex;
if ( visited[v]==0 ) DFSArticul ( g,v );
}
}
} /*FindArticul*/


