查找数组中整数的排列(给定顺序)

时间:2011-01-08 20:30:52

标签: c++ algorithm qt permutation

  

可能重复:
  Find valid assignments of integers in arrays (permutations with given order)

大家好,

我在找到一个算法来获取向量列表中的整数排列时遇到了一些问题:

给定Qt中的整数向量:(或者像C ++中的std :: vector一样)

QVector<int> line;

包含几个整数,例如:“2,1,-4,5”(“line”中至少有一个整数)。

我还有一个空整数向量的向量:

QVector< QVector<int> > ints;

“ints”包含至少一个空的int-QVector。

我现在需要找到向量中每个可能的整数排列,就像这个带有3个向量和2个整数(4,2)的简单例子一样:

{4,2} {} {}
{} {4,2} {}
{} {} {4,2}
{4} {2} {}
{4} {} {2}
{} {4} {2}

重要的是订单已经发出并且需要保留(不更改订单)。有了更多的整数或更多的向量,当然有更多有效的组合。

有人可以帮我找到一个算法,它会返回每个可能的组合,以便我可以对每个组合进行进一步的计算吗?

如果有人能帮助我会很棒!谢谢!

0 个答案:

没有答案