您的位置:首页 > 其它

无权图的单源最短路径最短路径算法

2016-06-08 16:09 141 查看
<pre name="code" class="cpp">
//BFS
void BFS(Vertex S)
{
visited[S]=true;
Enqueue(S,Q);
while(!Empty(Q))
{
V=Dequeue(Q);
for(V的每个邻接点)
if(!visited[W]){
visited[W]=true;
Enqueue(W,Q);
}
}
}

/*
*求无权图的单源最短路径
*dist[w]=S到W的距离
*dist[S]=0
*path[W]=S到W的路上经过的某顶点
*/
void Unweighted(Vertex S)
{
Enqueue(S,Q);
while(!isEmpty(Q)){
V=DeQueue(Q);
for(V的每个邻接点W)
if(dist[W]==-1){
dist[W]=dist[V]+1;
path[W]=V;
Enqueue(W,Q);
}
}
}



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: