如何计算C ++中双精度向量的累积和?

时间:2010-07-20 09:02:23

标签: c++ vector cumulative-sum

我有一个双打矢量,我需要创建另一个数组,它是第一个元素的累积和。例如;

 vector<double> Array(10,1);
 vector<double> Sum(10);  

 Sum[0] = Array[0]; 
 for(unsigned int i=1; i<Array.size(); i++)
     Sum[i] = Sum[i-1] + Array[i]; 

是否有内置功能可以执行上述累积总和?

1 个答案:

答案 0 :(得分:21)

没有经过测试,比如

std::partial_sum(Array.begin(), Array.end(), Sum.begin(), plus<double>());

如果它是C ++,

应该可以解决问题。 (实际上,plus<double>()可以默认为it seems。)