脑图
简单选择排序
#include <stdio.h>
#define MAXLEN 10
/**
* 交换两个元素
* @param a
* @param b
*/
void swap(int &a,int &b){
int temp;
temp = a;
a=b;
b=temp;
}
/**
* 选择排序
* @param A 待排序数组
*/
void SelectSort(int A[]){
for (int i = 0; i < MAXLEN-1; ++i) {
int min = i;
for (int j = i+1; j < MAXLEN; ++j)
if(A[j]<A[min]) min = j;
if(min != i)
swap(A[i],A[min]);
}
}
int main() {
int arr[MAXLEN]={0,4,5,6,7,2,1,3,8,9};
SelectSort(arr);
printf("选择排序\n");
for (int i = 0; i < MAXLEN; ++i) {
printf("%d",arr[i]);
}
return 0;
}