selectsort(选择排序)
#include<stdio.h> #include<iostream> using namespace std; //显示数组元素 void show(int *a,int n) { for(int i=0;i<n;i++) { printf("%d",a[i]); } printf("\n"); } //交换 void swap(int &a,int &b) { int temp = a; a = b; b = temp; } //选择排序实现 void selectsort(int *a,int n) { for(int i = 0;i<n;i++) { int min = a[i]; int minIndex = i; for(int j = i;j<n;j++) { if(a[j]<min) { min = a[j]; minIndex = j; } } if(minIndex != i) { swap(a[i],a[minIndex]); } } } //测试代码 int main() { int a[]={1,4,7,2,5,8,3,6,9}; int n = sizeof(a)/sizeof(int); show(a,n); selectsort(a,n); show(a,n); return 0; }