📅  最后修改于: 2023-12-03 15:13:49.349000             🧑  作者: Mango
有一个 $n \times m$ 的二维数组,你需要求出每一行的最大值,包括最大值的索引。以下是一个示例数组:
int[,] arr = new int[,]
{
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
对于这个数组,你需要得到如下结果:
Row 0: max = 3, index = 2
Row 1: max = 6, index = 2
Row 2: max = 9, index = 2
我们可以使用一个循环来迭代每一行,然后再在每一行内部使用另一个循环来找到该行中的最大值和索引。以下是一段实现代码:
for (int i = 0; i < arr.GetLength(0); i++)
{
int max = int.MinValue;
int index = -1;
for (int j = 0; j < arr.GetLength(1); j++)
{
if (arr[i, j] > max)
{
max = arr[i, j];
index = j;
}
}
Console.WriteLine($"Row {i}: max = {max}, index = {index}");
}
这段代码首先使用 GetLength(0)
方法获取数组的行数,然后在外部使用一个循环迭代每一行。在每一行内部,使用 GetLength(1)
方法获取该行的列数,然后再使用一个循环找到该行中的最大值和索引。
在找到最大值后,将其保存在 max
变量中,并将其索引保存在 index
变量中。最后,使用 Console.WriteLine
方法打印出结果。
在本文中,我们学习了如何在 C# 中求二维数组的行最大值。我们使用一个循环迭代每一行,在每一行内部使用另一个循环找到该行中的最大值和索引。这种方法适用于任何大小的二维数组。