标签: c++ algorithm stl permutation
我需要在矢量中采用3个元素的所有可能的独特组合。 std::next_permutation有效,但它给了我很多重复。
std::next_permutation
例如
(1,2,3,4,5) 和 (1,2,3,5,4)
我采取的前3个元素是相同的,所以我做了多余的工作。是否有任何有效的方法来迭代这些独特的组合?
答案 0 :(得分:-1)
首先,你必须弄清楚你可以从 b 对象中选择的 k 对象组合的数量 N 。
接下来,您可以通过迭代初始列表并使用所有这些组合填充N个容器来找到所有组合。