如何迭代STL映射以对抗所有元素。换句话说,我想找到所有可能的配对。我想要一个高效的算法(复杂性)。如何遍历STL映射(查找所有可能的对)
如果有STL向量,算法很简单。
vector<int> vInt;
vector<pair<int, int> > vPair;
for(int i = 0; i < vInt.size(); i++) {
for(int j = i + 1; j < vInt.size(); j++) {
vPair.push_back(make_pair(vInt[i], vInt[j]));
}
}
但是,如果你有一个STL映射是一样的算法?
观测值:我想
map<int, int> map;
vector<pair<int, int> > vPair;
???
我想转换到STL地图中的STL向量的所有可能的组合地图的值(不是键),不过,我想一种方法只使用STL地图
通过定义对在地图数为N *(N-1)/ 2一张大小为n的地图。因此,没有比用于矢量的算法更高效的算法。 – john
所有可能的配对或键或值的组合? – P0W
我只想要的值 –