Реализация рекурсивного алгоритма сортировки выбором - C#

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

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

Реализуйте рекурсивный алгоритм упорядочения по возрастанию заданного массива из n различных целых чисел методом сортировки выбором. Алгоритм сортировки выбором заключается в следующем: 1) Определить индекс наименьшего элемента массива 2) Поменять местами наименьший и первый элементы массива 3) Выполнить пункты 1 и 2 над остатком массива (массивом без первого элемента) Пункт 3 повторять, пока остаток массива не сократится до одного элемента Вот алгоритм сортировки
Листинг программы
  1. class Recurs_Sort
  2. {
  3. int n,max,k;
  4. public Recurs_Sort(int n)
  5. {
  6. this.n = n;
  7. }
  8. public int[] SortByChoose(int[] a, int n)
  9. {
  10. for (int i = n - 1; i > 0; i--)
  11. {
  12. k = i; max = a[i];
  13. for (int j = 0; j < i; j++)
  14. {
  15. if (a[j] > max)
  16. {
  17. k = j;
  18. max = a[j];
  19. }
  20. }
  21. a[k] = a[i];
  22. a[i] = max;
  23. }
  24. return a;
  25. }
  26. public static void Print(int[] a)
  27. {
  28. for (int i = 0; i < a.Length; i++)
  29. Console.Write(a[i].ToString() + " ");
  30. }
  31. }
  32. class Program
  33. {
  34. static void Main(string[] args)
  35. {
  36. int n = 10;
  37. int[] a = { 5, 13, 7, 9, 1, 8, 16, 4, 10, 2 };
  38. Recurs_Sort sortArray = new Recurs_Sort(n);
  39. sortArray.SortByChoose(a,n);
  40. Recurs_Sort.Print(sortArray.SortByChoose(a,n));
  41. Console.ReadLine();
  42. }
  43. }
как его сделать рекурсивным?

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

textual
Листинг программы
  1. min = i;
  2.  int tmp = arr[start];
  3.  arr[start] = arr[min]
  4.  arr[min] = tmp;

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


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

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

11   голосов , оценка 4.091 из 5

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

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

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