Это был вопрос, который меня задали в моем недавнем интервью, и я хочу знать (я действительно не помню теорию численного анализа, поэтому, пожалуйста, помогите мне:)
Если у нас есть некоторая функция, которая накапливает числа с плавающей запятой:
std::accumulate(v.begin(), v.end(), 0.0);
v
, например, std::vector<float>
.
-
Было бы лучше отсортировать эти числа перед их накоплением?
-
Какой порядок даст самый точный ответ?
Я подозреваю, что сортировка числа в порядке возрастания фактически сделают числовую ошибку меньше, но, к сожалению, я не могу доказать это сам.
P.S. Я действительно понимаю, что это, вероятно, не имеет никакого отношения к программированию на реальном мире, просто любопытно.