可能的组合和循环
possible combinations and loops
我必须使二维数组的所有可能组合。例如,如果我有一个 4x3 的数组......我使用 4 个循环,所有循环最多运行 3..获取所有组合...
例如,如果我有一个 4x3 数组,如下所示..
1 2 3
4 5 6
7 8 9
10 11 12
我将不得不做出这样的组合
1,4,7,10
1,4,7,11
1,4,7,12
1,4,8,10
1,4,8,11
1,4,8,12
1,4,9,10
1,4,9,11
1,4,9,12
1,5,8,10
1,5,8,11
1,5,8,12
...........
等等....
简而言之,所有这些组合...在这种情况下,可能组合的最大数量将是 3 次方 4....如果我有一个 NXM 数组,那么最大组合将是 m 次方 n....任何人都可以帮助创建它....我需要帮助在通用中解决它.....我认为应该使用递归函数...因为我不知道循环的编号...它将在运行时知道...
void buildArray(vector <int> build, vector< vector <int> > &arrays)
{
int position = build.size();
if (position == arrays.size()) { /* current build is one of the solutions*/}
else {
for (int i = 0; i < arrays[position].size(); i++)
{
build.push_back(arrays[position][i]);
buildArray(build, arrays);
build.pop_back();
}
}
}
相关文章:
- 如何循环打印顶点结构
- 如何在C++中从两个单独的for循环中添加两个数组
- 将多个 for 循环组合成单个迭代器
- 递归回溯打印长度为N的二进制数的所有组合,而不使用循环
- 通过字符串迭代并将每个循环中的先前字符组合在一起
- 如何将一个 while 循环与 for 循环组合在一起?
- 高速解决方案以循环浏览不同变量的所有组合,并使用启动步骤停止方案(C )
- 在循环中组合元组
- 为循环嵌套的变量快速生成数字组合
- 嵌套c++11范围循环,用于查找组合
- 用于C++中的循环的组合
- C++可能的硬币组合使用while循环
- 可能的组合和循环
- 在for循环中获得所有组合的最快方法是什么
- 如何将查找组合的几个循环代码转换为递归方法
- 如何处理c++中的循环组合?
- 用于组合组的'for'循环
- 组合和循环依赖
- 算法循环组合
- 通过只循环一次来组合c++标准算法