【发布时间】:2017-01-26 00:09:33
【问题描述】:
我想找到该索引在子列表中具有最小值的索引。 我有一个像这样的类名子问题:
public class Subproblem
{
public double[,] x { get; set; }
public double ReducedCost { get; set; }
}
然后我想找到降低成本的最小值的子问题的索引。
var sub = new List<Subproblem>();
Subproblem s = new Subproblem();
s.x = new double[DC1, DC1];
for (int m = 0; m < M; ++m)
{
s.ReducedCost = model.ObjVal;
for (int i = 0; i < DC1; ++i)
{
for (int j = 0; j < DC1; ++j)
{
s.x[i, j] = x[i, j].X;
}
}
sub.Add(s);
}
double minRC = sub.Min(a => a.ReducedCost);
int minRCIndex = sub.IndexOf(minRC);
最后一行还是错误,但我不知道如何解决。
【问题讨论】:
-
请说明您的错误是什么。
-
@Tom int minRCIndex = sub.IndexOf(minRC);这个语法仍然是错误的(有红色下划线)
-
你可以在dotnetfidlde添加你的样品吗?
-
试试
sub.IndexOf(s=> s.ReducedCost == minRC); -
这是因为您尝试在“子问题”列表中查找双精度数。在这种情况下,使用 indexOf 你应该给出一个子问题。