1. 程式人生 > >Data Structures and Algorithms (English) - 6-14 Count Connected Components(20 分)

Data Structures and Algorithms (English) - 6-14 Count Connected Components(20 分)

題目連結:點選開啟連結

 

題目大意:略。

 

解題思路:略。

 

AC 程式碼

int vis[MaxVertexNum];

void dfs(LGraph Graph, int v)
{
    vis[v]=1;
    PtrToAdjVNode p=Graph->G[v].FirstEdge;
    while(p)
    {
        int i=p->AdjV;
        if(!vis[i]) dfs(Graph,i);
        p=p->Next;
    }
}

int CountConnectedComponents( LGraph Graph )
{
    int cnt=0;
    for(int i=0;i<Graph->Nv;i++) vis[i]=0;
    for(int i=0;i<Graph->Nv;i++)
        if(!vis[i])
        {
            dfs(Graph,i);
            cnt++;
        }

    return cnt;
}