From: Sundy.Lee <656233622@qq.com> Date: Fri, 26 Jul 2019 05:06:49 +0000 (+0800) Subject: 增加了双向广搜的步骤 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=9b0a56dfd744db59b4156828d706c89903445ec1;p=oi-wiki%2Fmain.git 增加了双向广搜的步骤 增加了双向广搜的步骤。希望采纳,希望网站越来越好,造福广大OIer --- diff --git a/docs/search/bidirectional.md b/docs/search/bidirectional.md index d728f3ed..8e2dbca4 100644 --- a/docs/search/bidirectional.md +++ b/docs/search/bidirectional.md @@ -1 +1,23 @@ 从状态图上起点和终点同时开始进行宽度/深度优先搜索,如果发现相遇了,那么可以认为是获得了可行解。 + +双向广搜的步骤 +``` +开始结点 和 目标结点 入队列 q +标记开始结点为 1 +标记目标结点为 2 + +while(队列q不为空) +{ + 从 q.front() 扩展出新的s个结点 + + 如果 新扩展出的结点已经被其他数字标记过 + 那么 表示搜索的两端碰撞 + 那么 循环结束 + + 如果 新的s个结点是从开始结点扩展来的 + 那么 将这个s个结点标记为1 并且入队q + + 如果 新的s个结点是从目标结点扩展来的 + 那么 将这个s个结点标记为2 并且入队q +} +```