广度优先搜索示例

时间:2013-11-29 22:02:50

标签: java breadth-first-search

我想知道下面8皇后问题的解决方案是否使用广度优先搜索。它搜索所有可能的节点;然而,当没有任何地方可以合法放置女王时,之前的女王被删除。如果没有,我想知道如何将其转换为使用广度优先搜索。

1 个答案:

答案 0 :(得分:0)

我会说,对于eigth皇后问题的BFS解决方案的一般格式是采取一些解决方案的表示(比如8个数字形式0到7,表示女王每列的行)然后只是依次走过可能的解决方案(000000077777777),注意每个可能的解决方案。

深度优先 - 使用回溯搜索,就像您使用的那样,效率更高。有关这两种技术之间的比较,请参阅此article

编辑: 关于BFS的主题:有一些技巧可以使它更有效地解决这个问题。例如,如果您在第0行放置了一个女王,那么您就知道您不必为其他列中的女王尝试该行。等