图的广度优先遍历
基本思想
- 访问顶点V;
- 依次访问V的各个未被访问邻接点V1,V2,...,Vk;
- 分别从V1,V2,...,Vk出发依次访问他们未被访问邻接点,并使“先被访问顶点的邻接点”先于“后被访问顶点的邻接点”被访问。直至图中所有与顶点V有路径相同的顶点都被访问到
-
过程:首先从编号1开始,将1输出并把visited[]设置为【1】也就是标记1为被访问状态,然后把1传入队列。以上为程序初始化部分接下来为程序循环部分;接下来将1出队访问1的邻接点(这里区分深度优先队列,这里是将两个分支同时进行处理),首先访问2节点处理与上述相同。2结束后马上开始3于2相同;2,3入队。接下来2出队处理与上述相同,访问2的邻接点有(1.4.5因为1被访问完了所以开始对4.5处理)接下来同上述相同。