5
順序付けられた数値の効率的な安定合計
浮動小数点正数のかなり長いリスト(std::vector<float>、サイズ〜1000)があります。番号は降順でソートされます。順序に従ってそれらを合計すると: for (auto v : vec) { sum += v; } ベクトルの終わり近くはsumより大きいので、数値の安定性の問題が発生する可能性がありますv。最も簡単な解決策は、ベクトルを逆の順序でトラバースすることです。私の質問は、前向きの場合と同様に効率的ですか?キャッシュが不足しますか? 他のスマートなソリューションはありますか?