【发布时间】:2012-11-03 03:04:01
【问题描述】:
给你一个数字列表1, 2, ... ,n - 是否有一系列n!-1 swap 操作会生成列表的所有n! 排列,其中swap (i, j) 在单元格i 和@ 处交换元素987654327@?当输入列表未排序开始和/或列表中有重复时,一般情况如何?
上下文:我正在解决一个问题,如果您已经知道交换 2 个元素的分数并且我想暴力破解(使用 C++ next_permutation())所有可能的排列,那么数组的“分数”很容易计算。
【问题讨论】:
-
@MitchWheat:这个问题能清楚多少? OP 要求一种算法(如果存在)来生成 next_permutation (与 std::next_permutation 不同)每次调用只进行一次交换。
-
我很困惑为什么这不是一个真正的问题——我问错地方了吗? @mitchWheat - 如果这就是你要问的,我已经尝试过谷歌搜索 - 不确定我尝试的内容是否相关。
标签: algorithm permutation