Расширенная сортировка выбора, найдите два минимума в массиве!
Эй, ребята!
мой вопрос состоит в том , чтобы сделать "алгоритм сортировки выбора" более продвинутым ,найти два минимума в массиве ,где (min_2>min_1), а затем отсортировать его в соответствии с алгоритмом, который должен быть использован, я написал код, который правильно найдет два минимума, но моя проблема заключается в том, где я должен поставить функцию "swap", чтобы правильно отсортировать массив.
есть какие-нибудь предложения, пожалуйста?
Что я уже пробовал:
<pre> #include<iostream> using namespace std; void swap(int &x, int &y) { int temp; temp = x; x = y; y = temp; } void Sort(int a[], int n) { int min, min2, i; for (i = 0; i < n - 1; i += 2){ min = i; min2 = i + 1; if (a[min]>a[min2]) { swap(a[min],a[min2]); } for (int j = 0; j < n; j++) { if (a[j] < a[min]){ min2 = min; min = j; } else if (a[j] < a[min2]){ min2 = j; } } } cout << a[min] << endl; cout << a[min2] << endl; }