我想知道下面8皇后问题的解决方案是否使用广度优先搜索。它搜索所有可能的节点;然而,当没有任何地方可以合法放置女王时,之前的女王被删除。如果没有,我想知道如何将其转换为使用广度优先搜索。
答案 0 :(得分:0)
我会说,对于eigth皇后问题的BFS解决方案的一般格式是采取一些解决方案的表示(比如8个数字形式0到7,表示女王每列的行)然后只是依次走过可能的解决方案(0000000
到77777777
),注意每个可能的解决方案。
深度优先 - 使用回溯搜索,就像您使用的那样,效率更高。有关这两种技术之间的比较,请参阅此article。
编辑: 关于BFS的主题:有一些技巧可以使它更有效地解决这个问题。例如,如果您在第0行放置了一个女王,那么您就知道您不必为其他列中的女王尝试该行。等