在具有返回边的图上进行广度和深度优先搜索
Breadth and depth first search on a graph with returning edges
我确实了解深度和广度优先搜索,但这张图让我感到困惑,因为图中有些节点指向前面的节点。
所以让我们暂时假设 N
是一个目标状态,然后使用深度优先搜索我们会得到
A B E J K L F G M N
所以我们这样正确吗?我不重复 A
因为它是在正确的之前访问过的。
使用广度优先搜索,我会逐级搜索,所以我会
A B C D E F G H I J K L M N
这是正确的吗?
如果我们将目标状态更改为 P
那么DFS会给我们A B E J K L F G M N H O P
BFS 会给我们 A B C D E F G H I J K L M N O P
我觉得我做对了,我只是不确定我是否正确,因为这个图中有返回边。所以我只想有人确认我在正确的轨道上。
这对我来说是正确的。当指向一个已经在你的结果集中的节点时,它不应该被添加到结果集中第二次。
我确实了解深度和广度优先搜索,但这张图让我感到困惑,因为图中有些节点指向前面的节点。
所以让我们暂时假设 N
是一个目标状态,然后使用深度优先搜索我们会得到
A B E J K L F G M N
所以我们这样正确吗?我不重复 A
因为它是在正确的之前访问过的。
使用广度优先搜索,我会逐级搜索,所以我会
A B C D E F G H I J K L M N
这是正确的吗?
如果我们将目标状态更改为 P
那么DFS会给我们A B E J K L F G M N H O P
BFS 会给我们 A B C D E F G H I J K L M N O P
我觉得我做对了,我只是不确定我是否正确,因为这个图中有返回边。所以我只想有人确认我在正确的轨道上。
这对我来说是正确的。当指向一个已经在你的结果集中的节点时,它不应该被添加到结果集中第二次。