BFS广度优先算法,这个一般解决查找问题,和深度优先算法相对应。例如迷宫问题就是典型的广度优先算法。
BFS一般需要定义一个Queue队列(LinkedList)来记录和当前节点相邻的所有节点,先把头结点放进去。在遍历当前节点时把相邻的所有节点都加入到队列中,直到数据都遍历完成或者找到最优达到,就停止遍历。
一般也会定义一个boolean类型的状态变量数组来记录节点遍历的状态,防止重复遍历。
BFS广度优先算法,这个一般解决查找问题,和深度优先算法相对应。例如迷宫问题就是典型的广度优先算法。
BFS一般需要定义一个Queue队列(LinkedList)来记录和当前节点相邻的所有节点,先把头结点放进去。在遍历当前节点时把相邻的所有节点都加入到队列中,直到数据都遍历完成或者找到最优达到,就停止遍历。
一般也会定义一个boolean类型的状态变量数组来记录节点遍历的状态,防止重复遍历。