BFS

博主分享了对BFS(宽度优先搜索)的理解,指出BFS通过队列一层层搜索,适合解决最短路径问题。与DFS(深度优先搜索)对比,BFS以更有序的方式遍历节点,适合权重相等的情况。通过举例走迷宫,解释了BFS的实现过程,强调了队列在算法中的关键作用。博主认为多刷题是巩固算法知识的有效途径,对此感到兴奋并期待进一步学习。
摘要由CSDN通过智能技术生成

BFS学习心得

今天上午听了y总讲的BFS,受益匪浅,做了一个走迷宫的题目。

BFS的意思是宽度搜索,与DFS不同,DFS的搜索方式是先搜到底,然后回溯,而BFS是一层一层的往下搜,这样子在每条边的权重相等的情况下就可以实现最短路径问题。

而BFS我现在感觉一般都是用一个队列来维护的,把下一层的所有元素全部存放在队列里面,然后再维护这个队列,下一次依次遍历该队列,然后以此类推,每一次都把下一层需要遍历的数据放在队列里面,供下一次遍历。

这种思想是,你想由起点到达终点,必须一步步的去实现,那么BFS就是这么完成的,先由起点走到所有的下一个位置,再由下一个位置走到下下个位置,依次类推。

即如果要走到距离自己为8的点,从0开始,你必须先走到距离为1的点,然后再由距离为1的点走到距离为2的点,以此类推,最终走到终点。

今天上午最大的收获还是发现了原来如此简单的队列数据结构居然有如此神奇的作用,其可以达到一层层遍历的效果,每次都把下一层的放进来,然后下一次遍历的时候又把下一层的放进来,而且这个顺序刚好可以让每层之间不会冲突。

所以感觉原来如此简单的东西居然有如此大的应用,确实挺让我感觉很神奇的。

现在刚入门BFS和DFS,还是得多刷题,巩固一下算法,才能有更好的提高。

好了,每篇博客后面都附上一句话。

有一个人她今天要下课啦!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值