一、定义
选择排序是一种简单的排序方式,其复杂度为O(n*n),是一种稳定的排序方式
其思想是:假设有n个无序的数,设i = 0; j = i+1;用第i个数和第j个数进行比较若第i
个数大则交换两个数,否则不变。然后i和j+1进行比较直到j=n时停止,这时i保存
的为最小的数,第一趟完毕。重复n-1趟之后所有的数就排序完毕。
二、使用
要求:输入10个字符串将其排序,并将排序的结果输出。
void Selection_Sort() { int i = 0,j=0; char array[10][10]; char tem[10]; printf("please input ten strings\n");//提示输入字符串 for(i=0;i<10;i++) { scanf("%s",array[i]);//将输入字符串录入数组 } for(i=0;i<9;i++)//选择排序算法主体 { for(j=i+1;j<10;j++) { if(strcmp(array[i],array[j])) { strcpy(tem,array[j]); strcpy(array[j],array[i]); strcpy(array[i],tem); } } } for(i=0;i<10;i++) { printf("%s ",array[i]); } } int main() { Selection_Sort(); }
欢迎给位指出不足之处