广度优先搜索

广度优先搜索 bfs

        广度优先搜索类似于树的按层次遍历的过程,如下图所示。它和队列有很多相似之处,运用了队的许多思想,其实就是对队的深入一步研究,它的基本操作和队列几乎一样。
        就是先往“广”的地方找,再一层一层推下去。换句话说就是先把同层的找完,再往下一层去找,是一种“扩散”的思想。每个深度为t的结点一定会在深度为t+1的结点前被搜寻到。
        
         我们先简单复习一下队列的基本概念。


队列及其操作

        广度优队列是限定在一端进行插入,另一端进行删除的特殊的线性表。
        删除的一端称为队首(closed),插入的一端称为队尾(open)。
        例如排队买票,后来的人排在队尾(插入),队首的人先买到票离开(删除)。
        队列又称为先进先出表(FIFO, first-in-first-out)。

 


【例题1】 图的最短路径

         下图表示的是从城市A到城市H的交通图。从图中可以看出,从城市A到城市H要经过若干个城市。现要找出一条经过城市最少的一条路线。


样例输入:
         8
         1 0 0 0 1 0 1 1
         0 1 1 1 1 0 1 1
         0 1 1 0 0 1 1 1
         0 1 0 1 1 1 0 1
         1 1 0 1 1 1 0 0
         0 0 1 1 1 1 1 0
         1 1 1 0 0 1 1 0
         1 1 1 1 0 0 0 1

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值