https://www.cnblogs.com/kkun/archive/2011/11/23/2260281.html
#include<iostream>
#include <stdio.h>
#include <stack>
using namespace std;
void select_sort(int *a, int begin, int end) {
for (int i = 0; i < end; ++i) {
int min_val = a[i];
int min_val_index = i;
for (int j = i+1; j < end; ++j) {
if (a[j] < min_val) {
min_val = a[j];
min_val_index = j;
}
}
if (min_val_index != i) {
//swap(a[i], min_val); //注意不是赋值,而是数组里面的值要交换
swap(a[i], a[min_val_index]);
}
}
}
int main()
{
int a[8] = {4, 2, 6, 7, 9, 5, 1, 3};
int length = sizeof(a) / sizeof(a[0]);
select_sort(a, 0, length);
for(int i=0; i < 8; i++) {
cout << a[i] << " " << endl;
}
return 0;
}