Сортировка строк двумерного массива по второму столбцу - C#
Формулировка задачи:
Есть исходный массив размерностью [n,2]. Необходимо отсортировать строки этого массива по возрастанию элементов 2 столбца.
Нужно получить
int[,] mas = new int[n, 2] { { 0, 2 }, { 1, 5 }, { 2, 1 }, { 3, 3 }, { 4, 11 } };mas = { { 2, 1 },{ 0, 2 }, { 3, 3 }, { 1, 5 }, { 4, 11 } };Решение задачи: «Сортировка строк двумерного массива по второму столбцу»
textual
Листинг программы
class Program
{
static void Main(string[] args)
{
int[,] mas = new int[,] { { 0, 2 }, { 1, 5 }, { 2, 1 }, { 3, 3 }, { 4, 11 } };
int[] ar = new int[mas.GetLength(0)];
for (int i = 0; i < ar.Length; i++)
{
ar[i] = mas[i, 1];
}
Array.Sort(ar);//сортировка элементов
for (int j = 0; j <mas.GetLength(0); j++)
{
mas[j, 1] = ar[j];
}
for (int i = 0; i < mas.GetLength(0); i++)//вывод массива на экран
{
for (int j = 0; j < mas.GetLength(1); j++)
{
Console.Write($"{mas[i, j]} ");
}
Console.WriteLine();
}
Console.ReadKey();
}
}