
BFS
Vi_cki_
这个作者很懒,什么都没留下…
展开
-
迭代加深搜索
IDDFS 题目 LOJ 10022“埃及分数”题目链接https://loj.ac/p/10022迭代加深,字面意思。适用于搜索树很深而且很宽的题,如果直接使用DFS会陷入递归无法返回;如果直接用BFS,队列可能爆炸。具体操作模板:1、先设定搜索深度为1,用DFS搜索到第1层即停止2、如果没有找到答案,再设定深度为2,用DFS搜索2层即停止3、继续设定深度为3,4,5巴拉巴拉巴拉,逐步扩大DFS的搜索深度,直到找到答案每一层的广度上采用了DFS的搜索思想,在具体变成实现上是DF原创 2021-01-28 11:05:17 · 279 阅读 · 0 评论 -
双向广搜
双向广搜练习 题目 hdu1401"Solotaire"原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=1401双向广搜适用于知道起点和终点,并且正向和逆向都能进行搜索。原理:同时在起点和终点向对方做BFS,两个石头激起的波浪向对方扩散,将在中间的某个位置遇到,此时就找到了最优路径。题目大意:有一个8*8的棋牌,上面有4颗棋子,棋子可以上下左右启动。给定一个初始状态和一个目标状态,问能否在8步之内到达。题目分析:已经确定起点和终点,各自搜索.原创 2021-01-26 15:59:33 · 177 阅读 · 0 评论 -
八数码问题
八数码问题思路前言:备战蓝桥杯遇到一个八数码问题,整理一下思路。第一次写,不太好,见谅。BFS是由近到远的扩散过程,解决最短距离问题。搜索的可以是数,也可以是状态,八数码就是状态。从初始状态出发,每次转移都逐步逼近最终状态,每转移一次步数加一,达到目标时,经过的步数就是最短路径。举个例子:初始状态1 2 3 8 4 7 6 5 最终状态1 3 8 2 4 7 6 5 ...原创 2021-01-26 14:28:52 · 418 阅读 · 1 评论