#include <iostream>
using namespace std;
//选择排序--简单选择排序,最差时间复杂度O(n^2),
//最好时间复杂度O(n^2),平均时间复杂度O(n^2)
//不稳定,空间复杂度O(1)
void selectSort(int array[], int len) {
for (int i = 0; i < len - 1; ++i) {
int index = i;
for (int j = i + 1; j < len; ++j) {
if (array[j] < array[index]) {
index = j;
}
}
if (index != i) {
int temp = array[index];
array[index] = array[i];
array[i] = temp;
}
}
}
void printOr(int array[], int len) {
for (int i = 0; i < len; ++i) {
cout << array[i] << ",";
}
cout << endl;
}
void printFin(int array[], int len) {
for (int i = 0; i < len; ++i) {
cout << array[i] << ",";
}
cout << endl;
}
int main() {
int array[] = { 7,23,5,68,4,32,21,78,53,123};
int len = sizeof(array) / sizeof(int);
cout << "The orginal array is:" << endl;
printOr(array, len);
selectSort(array, len);
cout << "The selectSorted array is:" << endl;
printFin(array, len);
cin.get();
}
运行结果: