【发布时间】:2009-10-10 00:43:25
【问题描述】:
我有 v1 和 v2 ,我应该如何获得一个新的 v 如下所示?
v1 = {1,2}
v2 = {3,4,5}
v = {f(1,3) , f(1,4) , f(1,5) f(2,3) ,f(2,4) ,f(2,5)}
我知道我可以使用两个循环来做到这一点,但是如果有更惯用的方式,比如使用 STL 算法?
//using two loops
for iter1 of v1
for iter2 of v2
v.push_back(f(v1,v2))
编辑:
v1 和 v2 不必具有相同的大小。
【问题讨论】:
-
有什么好的非递归算法来计算笛卡尔积? :stackoverflow.com/questions/215908/…
-
这看起来几乎完全符合您的要求:http://stackoverflow.com/questions/979436
标签: c++ stl vector combinations