gpt4 book ai didi

c++ - 在 C++ 中添加不同大小的 double vector

转载 作者:太空狗 更新时间:2023-10-29 19:50:13 27 4
gpt4 key购买 nike

我有许多不同大小的 vector 容器,每个容器都包含 double 。我想添加每个 vector 的元素来创建一个 vector double 。这个简单的例子将举例说明我在说什么:

考虑具有三个元素 3.0 2.0 1.0 的两个 vector A 和具有两个元素的 B2.0 1.0。我想从最后一个元素开始添加两个 vector 并工作向后。这将给出一个包含条目 3.0 4.0 2.0 的数组 C。

最优雅/最有效的方法是什么?

谢谢!

最佳答案

一旦你知道你有一个比另一个大的 vector

std::vector<double> new_vector = bigger_vector; // Copy the largest
std::transform(smaller_vector.rbegin(), smaller_vector.rend(), // iterate over the complete smaller vector
bigger_vector.rbegin(), // 2nd input is the corresponding entries of the larger vector
new_vector.rbegin(), // Output is the new vector
std::plus<double>()); // Add em

这很好,因为您不必执行任何循环缩进,并且可以在任何支持反向迭代器的序列容器上工作。

关于c++ - 在 C++ 中添加不同大小的 double vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3610459/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com