广度优先搜索
发布日期:2021-05-07 22:03:07 浏览次数:9 分类:精选文章

本文共 326 字,大约阅读时间需要 1 分钟。

1. 在对树的操作中可能经常要使用到宽度优先搜索,例如寻找某棵树的某一层的所有节点就需要使用到宽度优先搜索,还有就是像分酒,迷宫这些问题都可以使用到宽搜来解决,这些往往会涉及到从开始状态到目标状态的转换,而且经过一次操作从一个状态转换到另外一个状态,往往求解的是最短的路径或者最少的步骤

宽搜属于层次的遍历,进行一层一层的寻找,主要需要经过以下几个方面的操作:

① 把根节点放到队列的末尾

② 每次从队列的头部取出一个元素,查看这个元素所有的下一级元素,把它们放到队列的末尾。并把这个元素记为它下一级元素的前驱

③ 找到所要找的元素时结束程序

④ 如果遍历整个树还没有找到,结束程序

总结起来就是:把根节点加入到队列中,弹出一个节点,加入若干个邻居节点

上一篇:Java中对于面向对象思想的理解
下一篇:分红酒(广度优先搜索)

发表评论

最新留言

留言是一种美德,欢迎回访!
[***.207.175.100]2025年03月20日 22时42分53秒