2014-03-27 34 views
0

我有一個具有任意數量雙精度的矢量。對於課程項目,我們正在掃描這些數字值中的「脈衝」或尖峯,然後需要通過對特定範圍內的數字求和來計算它們的面積。對矢量中的一系列值執行操作 - 使用通用算法

我可以使用簡單的for循環來做到這一點,但是,我們的教授挑戰我們儘可能使用內置算法。在cplusplus.com閱讀算法課程中的各個成員我有點失落。任何能夠請給我一個這樣的事情的例子,或者指向我可能有助於縮小搜索範圍的文檔?

基本上尋找一種方法來使用內置算法之一來遍歷一個向量,總結相鄰的值並返回總和。我將通過向量中的開始和結束位置。

Lambda的也是允許的,儘管我對他們不是很熟悉。但似乎他們可能對這樣的事情有用。

+0

'我們的教授挑戰我們儘可能使用內置算法。 「我無法相信。一個C++老師,實際上希望你使用C++ :) – PaulMcKenzie

回答

1

嘗試std :: accumulate來求和值,std :: for_each循環。

+0

謝謝!剛發佈後發現(當然,我發現之前搜索幾次後發現): http://stackoverflow.com/questions/3221812/sum-of-elements-in-a-stdvector # 2列舉了一個這樣的例子,看起來很簡單,而且是我將要嘗試的。 – CGutz