Объяснить принцип работы сортировки выбором - C#

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

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

Листинг программы
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. namespace Лаба3
  6. {
  7. class Program
  8. {
  9. static void Main(string[] args)
  10. {
  11. double sum = 0;
  12. int n = 5;
  13. double[] mass = new double[5];
  14. for (int i = 0; i < n; i++)
  15. {
  16. Console.Write("Введите " + i + "-ый элемент массива: ");
  17. mass[i] = double.Parse(Console.ReadLine());
  18. }
  19. for (int i = 0; i < n; i++)
  20. {
  21. if (mass[i] < 0)
  22. {
  23. sum += mass[i];
  24. }
  25. }
  26. if (sum == 0)
  27. {
  28. Console.WriteLine("Отрицательных элементов нет");
  29. }
  30. else
  31. {
  32. Console.WriteLine("Сумма отрицательных элементов=" + sum);
  33. }
  34. for (int j = 0; j < n - 1; j++)
  35. {
  36. double min = mass[j];
  37. int imin=j;
  38. for(int i = j+1;i<n;i++)
  39. {
  40. if(mass[i]<min)
  41. {
  42. min = mass[i];
  43. imin=i;
  44. }
  45. }
  46. mass[imin]=mass[j];
  47. mass[j]=min;
  48. }
  49. Console.WriteLine("Нулевой элемент массива=" + mass[0]);
  50. Console.WriteLine("Первый элемент массива=" + mass[1]);
  51. Console.WriteLine("Второй элемент массива=" + mass[2]);
  52. Console.WriteLine("Третий элемент массива=" + mass[3]);
  53. Console.WriteLine("Четвёртый элемент массива=" + mass[4]);
  54. }
  55. }
  56. }
Пытаюсь вспомнить принцип действия этой сортировки но не понимаю.
Листинг программы
  1. for (int j = 0; j < n - 1; j++)
  2. {
  3. double min = mass[j];
  4. int imin=j;
  5. for(int i = j+1;i<n;i++)
  6. {
  7. if(mass[i]<min)
  8. {
  9. min = mass[i];
  10. imin=i;
  11. }
  12. }
  13. mass[imin]=mass[j];
  14. mass[j]=min;
мы заменяем первый элемент в массиве на наименьший,а куда идёт тот,который был до этого?

Решение задачи: «Объяснить принцип работы сортировки выбором»

textual
Листинг программы
  1.                 mass[imin]=mass[j];
  2.                 mass[j]=min;

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


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

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

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

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

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

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