由于题目过水。。 我就在这里把bfs的模板写一些吧。。
bfs的思想是利用队列的特性 对树的每一层先遍历
每一次访问时取出队首 然后排出~
#include<queue>
void bfs(int start)
{
int t;//保存队首的元素
queue<int>q;//定义一个名字叫q的队列
q.push(start);//树根入队
while(!q.empty())//当队列里面还有元素 即还没有搜索结束
{
t=q.front();
q.pop();
int next;
if()
{
q.push(next);
vis[next]=....;
}
}
}
bfs利用了队列的功能 大致的思想就是队列的不断入队 出队~~