【发布时间】:2012-07-22 20:34:02
【问题描述】:
如果我有以下情况:
#include <iostream>
#include <vector>
#include <algorithm>
#include <iterator>
struct Features{ int F1, F2, F3, F4; };
int criterionFunction(Features const& features) {
return
-2*features.F1*features.F2
+3*features.F1
+5*features.F2
-2*features.F1*features.F2*features.F3
+7*features.F3
+4*features.F4
-2*features.F1*features.F2*features.F3*features.F4; }
如何应用transform() 来查找前三个 最大值?
谢谢。
【问题讨论】:
-
为什么是
transform?nth_element或partial_sort似乎更合适。 -
请更具体。这可能是一个线性优化问题,或者您可能只想从现有列表中选择一些元素。