用户工具

站点工具


2020-2021:teams:namespace:广度优先搜索_bfs_与标数最短路_dijkstra

这是本文档旧的修订版!


=广度优先搜索(BFS)=

下面是利用队列的BFS非递归实现

void bfs(int v)//以v开始做广度优先搜索(非递归实现,借助队列)
{
    list<int>::iterator it;
    visited[v] = true;
    cout << v << " ";
    queue<int> myque;
    myque.push(v);
    while (!myque.empty())
    {
        v = myque.front();
        myque.pop();
        for (it = graph[v].begin(); it != graph[v].end(); it++)
        {
            if (!visited[*it])
            {
                cout << *it << " ";
                myque.push(*it);
                visited[*it] = true;//访问过
            }
        }
    }
    cout << endl;
}
2020-2021/teams/namespace/广度优先搜索_bfs_与标数最短路_dijkstra.1589599626.txt.gz · 最后更改: 2020/05/16 11:27 由 kongyou