类似的问题以前曾被问过,但我找不到与我的问题完全匹配的问题。
我有 4 个向量,每个向量包含 200-500 个 4 位整数。每个向量中元素的确切数量各不相同,但我可以将其修复为特定值。我需要找到这 4 个向量中元素的所有可能组合。
eg:
v1[10, 30]
v2[11, 45]
v3[63, 56]
v4[82, 98]
所以我会得到这样的东西:
[10、11、63、82];
[30、11、63、82];
[10、45、63、82];
[10, 45, 56, 82] 等等..
该算法是否有一个通用名称,以便我可以在线找到一些参考资料?否则,任何有关在 C++ 中实现此功能的提示都会有所帮助。性能并不是什么大问题,因为我只需要运行算法一次。 STL中有什么内置的东西吗?
算法不多...
for(vector<int>::const_iterator i1 = v1.begin(); i1 != v1.end(); ++i1)
for(vector<int>::const_iterator i2 = v2.begin(); i2 != v2.end(); ++i2)
for(vector<int>::const_iterator i3 = v3.begin(); i3 != v3.end(); ++i3)
for(vector<int>::const_iterator i4 = v4.begin(); i4 != v4.end(); ++i4)
cout << "[" << *i1 << "," << *i2 << "," << *i3 << "," << *i4 << "]" << endl;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)