void select_sort(int a[], int n) {
int i, j, min;
for (i = 0; i < n - 1; i++) { //进行n-1趟排序
min = i; //用来记录最小元素的下标
for (j = i + 1; j < n; j++) //在a[i+1]到a[n-1]中找到最小的元素a[min]
if (a[j] < a[min])
min = j;
if (min != i) {
int temp = 0;
temp = a[i];
a[i] = a[min];
a[min] = temp; //如果a[min]不是最小元素,将a[min]与a[i]交换
}
}
}
冒泡排序
void bubble_sort(int a[], int n) {
int i,j;
bool exchange;
for (i = 0; i < n - 1; i++) {
exchange = false;
for (j = n - 1; j > i; j--) { //小的一直往前面冒泡
if (a[j] < a[j - 1]) { //大的在前面,反序,交换
int temp = 0;
temp = a[j];
a[j] = a[j-1];
a[j-1] = temp;
exchange = true;
}
}
if (exchange == false)
return; //本趟没有交换的时候,跳出循环
}
}
选择排序void select_sort(int a[], int n) { int i, j, min; for (i = 0; i < n - 1; i++) { //进行n-1趟排序 min = i; //用来记录最小元素的下标 for (j = i + 1; j < n; j++) //在a[i+1]到a[n-1]中找到最小的元素a[min] ...