二维数组是由多个一维数组组成的数组。每个一维数组可以看作是二维数组的一行。反转二维数组通常指的是将每一行的元素顺序反转,或者将整个二维数组的行顺序反转。
反转二维数组在数据处理中有多种应用场景,例如:
反转二维数组主要有两种类型:
以下是C#中反转二维数组的示例代码:
using System;
class Program
{
static void Main()
{
int[,] array = {
{ 1, 2, 3 },
{ 4, 5, 6 },
{ 7, 8, 9 }
};
int rows = array.GetLength(0);
int cols = array.GetLength(1);
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols / 2; j++)
{
int temp = array[i, j];
array[i, j] = array[i, cols - j - 1];
array[i, cols - j - 1] = temp;
}
}
// 打印反转后的数组
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
Console.Write(array[i, j] + " ");
}
Console.WriteLine();
}
}
}
using System;
class Program
{
static void Main()
{
int[,] array = {
{ 1, 2, 3 },
{ 4, 5, 6 },
{ 7, 8, 9 }
};
int rows = array.GetLength(0);
int cols = array.GetLength(1);
for (int j = 0; j < cols; j++)
{
for (int i = 0; i < rows / 2; i++)
{
int temp = array[i, j];
array[i, j] = array[rows - i - 1, j];
array[rows - i - 1, j] = temp;
}
}
// 打印反转后的数组
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
Console.Write(array[i, j] + " ");
}
Console.WriteLine();
}
}
}
using System;
class Program
{
static void Main()
{
int[,] array = {
{ 1, 2, 3 },
{ 4, 5, 6 },
{ 7, 8, 9 }
};
int rows = array.GetLength(0);
int cols = array.GetLength(1);
for (int i = 0; i < rows / 2; i++)
{
for (int j = 0; j < cols; j++)
{
int temp = array[i, j];
array[i, j] = array[rows - i - 1, j];
array[rows - i - 1, j] = temp;
}
}
// 打印反转后的数组
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < cols; j++)
{
Console.Write(array[i, j] + " ");
}
Console.WriteLine();
}
}
}
通过以上示例代码和解释,你应该能够理解如何在C#中反转二维数组,并根据具体需求选择合适的反转类型。
领取专属 10元无门槛券
手把手带您无忧上云