访问二维数组中的行

本文关键字:二维数组 访问 | 更新日期: 2023-09-27 18:32:32

我有一个像这样的多维数组,大约有 3000 行和 200 列:

+--+--+--+
|21|23|41|
+--+--+--+
|11|14|16| // 11 is the smalles value in 2nd row
+--+--+--+
|43|35|23|
+--+--+--+

我想确定第二行的 smalles 值。有没有更好/更具可读性/linq的解决方案?我目前使用 for 循环?

我目前的方法:

int min = array[0,1];
for (int i= 1; i<len;i++)
{
    if (array[i,1] < min)
    {
        min = array[i,1];
    }
}

访问二维数组中的行

设数组

arrl.u == 1建议第二行:

arr.Select((t, u) => new { u, t }).Where(l => l.u == 1).FirstOrDefault().t.Min();

找到了一个可行的解决方案

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