深搜和广搜s

来源:互联网 发布:烈火封神翅膀进阶数据 编辑:程序博客网 时间:2024/05/01 09:20

深搜:

void DFS(VLink G[],int v){    int w;    VISIT(v);    visited[v]=1;    w=FIRSTADJ(G,v);    while(w!=-1)    {        if(visited[w]==0)            DFS(G,w);        w=NEXTADJ(G,v);    }}void TRAVEL_DFS(VLink G[],int visited[],int n){    int i;    for(i=0;i<n;i++)        visited[i]=0;    for(i=0;i<n;i++)        if(visited[i]==0)            DFS(G,i);}

广搜:

void BFS(VLink G[],int v){    int w;    VISIT(v);    visited[v]=1;    ADDQ(Q,v);    while(!EMPTYQ(Q))    {        v=DELQ(Q);        w=FIRSTADJ(G,v);        while(w!=-1)        {            if(visited[w]==0)            {                VISIT(w);                visited[w]=1;                ADDQ(Q,w);            }            w=NEXTADJ(G,v);        }    }}void TRAVEL_BFS(VLink G[],int visited[],int n){    int i;    for(i=0;i<n;i++)        visited[i]=0;    for(i=0;i<n;i++)        if(visited[i]==0)            BFS(G,i);}




0 0