#include<iostream>
using namespace std;
template <typename T >//也可以写成class
void myswa(T& a, T& b);
template <typename T >
void Arrange_squence(T arr[], int len);
template <typename T >
void Myprint(T& a, int len);
int main() {
int a[6] = { 1,3,2,4,6,5 };
char B[] = { 'a','k','g','s','b','a','k'};
Arrange_squence(a, sizeof(a) / sizeof(int));
Myprint(a, 6);
Arrange_squence(B, sizeof(B) / sizeof(char));
Myprint(B, sizeof(B) / sizeof(char));
return 0;
}
template <typename T >
void myswa(T& a, T& b) {
T temp = 0;
temp = a;
a = b;
b = temp;
}
template <typename T >
void Arrange_squence(T arr[], int len) {
int i = 0, j = 0;
int min = 0;
for (i = 0; i < len; i++) {
min = i;
for (j = i + 1; j < len; j++) {
min = (arr[min] < arr[j]) ? min : j;
}
if (min != i)
myswa(arr[min], arr[i]);
}
}
template <typename T >
void Myprint(T& a, int len) {
for (int i = 0; i < len; i++)
cout << a[i] << " ";
cout << endl;
}