OSDN Git Service

增加了双向广搜的步骤
authorSundy.Lee <656233622@qq.com>
Fri, 26 Jul 2019 05:06:49 +0000 (13:06 +0800)
committerGitHub <noreply@github.com>
Fri, 26 Jul 2019 05:06:49 +0000 (13:06 +0800)
增加了双向广搜的步骤。希望采纳,希望网站越来越好,造福广大OIer

docs/search/bidirectional.md

index d728f3e..8e2dbca 100644 (file)
@@ -1 +1,23 @@
 从状态图上起点和终点同时开始进行宽度/深度优先搜索,如果发现相遇了,那么可以认为是获得了可行解。
+
+双向广搜的步骤
+```
+开始结点 和 目标结点 入队列 q
+标记开始结点为 1
+标记目标结点为 2
+
+while(队列q不为空)
+{
+  从 q.front() 扩展出新的s个结点
+  
+  如果 新扩展出的结点已经被其他数字标记过
+    那么 表示搜索的两端碰撞
+    那么 循环结束
+  
+  如果 新的s个结点是从开始结点扩展来的
+    那么 将这个s个结点标记为1 并且入队q 
+    
+  如果 新的s个结点是从目标结点扩展来的
+    那么 将这个s个结点标记为2 并且入队q
+}
+```