То, что у меня получилось, сортирует элементы массива в строках. Мне нужно, чтобы сортировались все элементы массива. Например,
6 1 2 3
4 9 8
7 5 0
0 1 2 3
4 5 6
7 8 9
static void Main(string[] args)
{
Console.WriteLine("Array before sort:");
int[][] jagged = new int[5][];//объявление рваного массива: количество строк и количество элементов внутри
jagged[0] = new int[6];
jagged[1] = new int[2];
jagged[2] = new int[4];
jagged[3] = new int[9];
jagged[4] = new int[5];
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < jagged[i].Length; j++)//заполнение массива случайными числами и вывод их на экран
{
jagged[i][j] = rand.Next(-15, 15);
Console.Write(jagged[i][j] + " ");
}
Console.WriteLine();
}
Console.WriteLine("Array after sort:");
for (int i = 0; i < jagged.Length; i++)
{
Array.Sort(jagged[i]);
}
Array.Sort(jagged, (x, y) => x.Length.CompareTo(y.Length));
for (int i = 0; i < jagged.Length; i++)
{
for (int j = 0; j < jagged[i].Length; j++)
{
Console.Write(jagged[i][j]+" ");
}
Console.WriteLine();
}
Console.ReadKey();
}
Пишем метод для печати массива
void PrintArray(int[][] source)
{
for (int i = 0; i < source.Length; i++)
{
for (int j = 0; j < source[i].Length; j++)
Console.Write($"{source[i][j]} ");
Console.WriteLine();
}
}
Потом метод для сортировки
void SortJagged(int[][] source)
{
var len = source.Sum(x=>x.Length);
var arr = new int[len];
int ind = 0;
for(int i=0; i<source.Length; i++)
for(int j=0; j<source[i].Length; j++)
arr[ind++]=source[i][j];
Array.Sort(arr);
ind = 0;
for (int i = 0; i < source.Length; i++)
for (int j = 0; j < source[i].Length; j++)
source[i][j] = arr[ind++];
}
Потом убираем из вашего кода всё ненужное
Random rand = new Random();
int[][] jagged = new int[5][];//объявление рваного массива: количество строк и количество элементов внутри
jagged[0] = new int[6];
jagged[1] = new int[2];
jagged[2] = new int[4];
jagged[3] = new int[9];
jagged[4] = new int[5];
for (int i = 0; i < 5; i++)
for (int j = 0; j < jagged[i].Length; j++)//заполнение массива случайными числами и вывод их на экран
jagged[i][j] = rand.Next(-15, 15);
Console.WriteLine("Before sorting");
PrintArray(jagged);
SortJagged(jagged);
Console.WriteLine("After sorting");
PrintArray(jagged);
Получаем вывод
Before sorting
14 12 -9 -5 13 -8
-3 -7
1 7 -12 -4
5 4 5 -9 -13 14 -10 -5 13
1 -10 11 14 -3
After sorting
-13 -12 -10 -10 -9 -9
-8 -7
-5 -5 -4 -3
-3 1 1 4 5 5 7 11 12
13 13 14 14 14
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
пытаюсь загрузить images в бд или на сервер , но не получаетсяможет кто нибудь поможет мне
Перенёс базу данных с сервера в облако, загрузил на на новый сервер и понял, что надо было делать дамп, а доступа к тому сервера нет никакого,...