思维导图
重点内容整理
宽(广)度优先搜索(BFS)
搜索方式
宽度优先搜索是一层层向外扩散的搜索方式。
一般用来解决“求最少几步可以达到题目要求的情况”的问题。
搜索步骤
1.定义一个队列,将起点放进去。
2.定义一个标记数组,把起点标记掉。
3.进行while循环,循环条件为“队列不为空”。
(循环内容:)
4.将队头元素存起来,队头出队。
5.判断是否达到目标状态,达到跳出循环。
6.遍历邻接元素,判断元素是否被标记,没被标记,将元素入队,标记掉此元素。
深度优先搜索(DFS)
搜索方式
深度优先搜索是一直往前搜索,直到搜到头,然后退回上一步重复执行,达到要求为止。
一般用来解决连通区域、按位搜索、皇后放置的问题。
搜索步骤
1.判断是否达到要求,达到return。
2.遍历邻接元素,判断元素是否被标记,没被标记,标记掉此元素,再次调用。
(一直重复此操作)
总结
这次我主要整理了可达鸭金牌学院J2知识。