Переставить строки матрицы местами так что бы отрицательные элементы стояли на главной диагонали - C#

Узнай цену своей работы

Формулировка задачи:

В квадратной матрице в каждом столбце и каждой строке есть единственный отрицательны элемент. Нужно переставить строки местами так что бы отрицательные элементы стояли на гласной диагонали.

Решение задачи: «Переставить строки матрицы местами так что бы отрицательные элементы стояли на главной диагонали»

textual
Листинг программы
  1. static void HoareSort(int[] array, int start, int end)
  2. {
  3.     if (end == start) return;
  4.     var pivot = array[end];
  5.     var storeIndex = start;
  6.     for (int i = start; i <= end - 1; i++)
  7.         if (array[i] <= pivot)
  8.         {
  9.             var t = array[i];
  10.             array[i] = array[storeIndex];
  11.             array[storeIndex] = t;
  12.             storeIndex++;
  13.         }
  14.  
  15.     var n = array[storeIndex];
  16.     array[storeIndex] = array[end];
  17.     array[end] = n;
  18.     if (storeIndex > start) HoareSort(array, start, storeIndex - 1);
  19.     if (storeIndex < end) HoareSort(array, storeIndex + 1, end);
  20. }
  21.  
  22. static void HoareSort(int[] array)
  23. {
  24.     HoareSort(array, 0, array.Length - 1);
  25. }
  26.  
  27. static Random random = new Random();
  28.  
  29. static int[] GenerateArray(int length)
  30. {
  31.     var array = new int[length];
  32.     for (int i = 0; i < array.Length; i++)
  33.         array[i] = random.Next();
  34.     return array;
  35. }
  36.  
  37. public static void Main()
  38. {
  39.     var array = GenerateArray(10);
  40.     HoareSort(array);
  41.     foreach (var e in array)
  42.         Console.WriteLine(e);
  43. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.125 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы