BFS算法之求单源最短路径

来源:互联网 发布:鬼泣4但丁数据 编辑:程序博客网 时间:2024/05/22 00:43
//BFS求两顶点最短距离问题//总结:图的代码并不像链表,而更像是顺序表,其存储结构使用的是数组的方式。 int BFS_Mix_Distance(Graph G,int u,int i)   //求u到i的路径长度{    int w;    InitQueue(Q);    visit(u);    visited[u] = true;    EnQueue(Q,u);    for(int j = 0; j< G.vexnum ;j++)    d[i]=0;    d[i]=-1;    while(!IsEmpty(Q))    {        DeQueue(Q,u);        for(w = FirstNeighbor(G,u); w >= 0;w = NextNeighbor(G,u,w))        {            if(visited[w] == false)            {            visit(w);            visited[w] = true;            d[w] = d[u]+1;            EnQueue(Q,w);             }        }       }   } 
原创粉丝点击