-3
A
回答
2
您可以重复艾弗地图关键是有序的:
std::vector<std::array<Sample, 3u>> get_triplets(const std::map<int, Sample>& samples)
{
if (samples.size() < 3) {
return {};
}
std::vector<std::array<Sample, 3u>> res;
auto it = samples.begin();
auto it1 = std::next(it);
auto it2 = std::next(it1);
for (; it2 != samples.end(); ++it, ++it1, ++it2) {
res.push_back({{it->second, it1->second, it2->second}});
}
return res;
}
编辑:有正uplets,从以前的三重版本的小变化:
std::vector<std::vector<Sample>> get_n_uplets(std::size_t n, const std::map<int, Sample>& samples)
{
if (samples.size() < n) {
return {};
}
std::vector<std::vector<Sample>> res;
auto first = samples.begin();
auto last = std::next(first, n - 1);
for (; last != samples.end(); ++first, ++last) {
std::vector<Sample> inner;
for (auto it = first; it != std::next(last); ++it) {
inner.push_back(it->second);
}
res.push_back(inner);
}
return res;
}
+0
矢量长度不应该被硬编码为3.它可以是任何数字。 – TheChosenOne
+0
@TheChosenOne:添加了n-uplets版本。 – Jarod42
相关问题
- 1. 获取MATLAB矢量子集
- 2. 获取最大键的矢量地图中的矢量
- 3. 矢量子集与列表子集
- 4. 矢量化子集()?
- 5. 提取矢量的子矢量
- 6. 如何获取Rust中的每个矢量子集?
- 7. 如何获取矢量子集的方差?
- 8. 获取Openlayer矢量功能与群集
- 9. 从subKeySet获取子地图集
- 10. 子集由矢量在r
- 11. jQuery矢量地图插件:获取国家的维度
- 12. 从jQuery矢量地图获取所选国家的名称
- 13. 从包装提取到矢量地图
- 14. 矢量地图的对象
- 15. 结合地图和矢量和列表
- 16. 地图载体将矢量地图
- 17. 谷歌地图为矢量地图
- 18. 的Python:表示为矢量
- 19. 子集和/与矢量值中的R
- 20. 如何操作矢量的子集?
- 21. Rolling适用于矢量的子集
- 22. R:基于矢量子集的行
- 23. 排序分类矢量的子集
- 24. IKARUS实现矢量地图
- 25. 打印地图矢量
- 26. 转换地图矢量树
- 27. 阶地图序列矢量
- 28. android osmdroid矢量地图
- 29. 将子集的矢量值替换为子集的平均值
- 30. GROUP BY和聚集在地图上的矢量 - Clojure的
该图像不够清晰。请解释你正在努力实现的更多细节。 – Banex
不应该很难用例如['std :: transform'](http://en.cppreference.com/w/cpp/algorithm/transform)和['std :: back_inserter'](http://en.cppreference.com/w/cpp/iterator/back_inserter)。因为它们不是随机访问迭代器,所以需要对地图迭代器进行一些工作。 –
@Banex我想将所有连续的地图值提取到矢量中。通过连续我的意思是key(n)> key(n-1)。这些值应该分组为特定长度的向量(在图像长度等于3) – TheChosenOne