【发布时间】:2010-04-24 11:46:39
【问题描述】:
我正在尝试改进我目前针对 8 皇后问题的算法,这是我第一次真正处理算法设计/算法。我想结合此处描述的不同 Y 值的排列来实现深度优先搜索: http://en.wikipedia.org/wiki/Eight_queens_puzzle#The_eight_queens_puzzle_as_an_exercise_in_algorithm_design
我已经实现了置换部分来解决问题,但是我在考虑深度优先搜索时遇到了一些麻烦。它被描述为一种遍历树/图的方式,但它会生成树图吗?只有当深度优先搜索生成要遍历的树结构时,通过实现一些逻辑来只生成树的某些部分,这种方法似乎才会更有效。
所以本质上,我必须创建一个算法来生成一个修剪过的字典排列树。我知道如何实现修剪逻辑,但我只是不确定如何将它与排列生成器联系起来,因为我一直在使用 next_permutation。
是否有任何资源可以帮助我了解深度优先搜索的基础知识或创建树形字典排列?
【问题讨论】:
标签: algorithm tree depth-first-search