我有一个像这样的多维数组,有大约3000行和200列:
+--+--+--+
|21|23|41|
+--+--+--+
|11|14|16| // 11 is the smalles value in 2nd row
+--+--+--+
|43|35|23|
+--+--+--+
我想确定第二行的smalles值。 有更好/更可读/ linq的解决方案吗?我目前使用for-loop?
我目前的方法:
int min = array[0,1];
for (int i= 1; i<len;i++)
{
if (array[i,1] < min)
{
min = array[i,1];
}
}
答案 0 :(得分:0)
让arr
成为数组,l.u == 1
表示第二行:
arr.Select((t, u) => new { u, t }).Where(l => l.u == 1).FirstOrDefault().t.Min();
答案 1 :(得分:0)
找到了可行的解决方案
int[,] array = new int[3, 3] { { 21, 23, 41 }, { 11, 14, 16 }, { 43, 35, 23 } };
int min = Enumerable.Range(0, array.GetLength(1)).Min(i => array[1, i]);
Console.WriteLine(min); // 11